标题: [问题求助] [已解决]VBS能否不使用第三方程序实现获取注册所有权? [打印本页]
作者: 9zhmke 时间: 2015-12-19 15:36 标题: [已解决]VBS能否不使用第三方程序实现获取注册所有权?
本帖最后由 9zhmke 于 2016-1-18 11:24 编辑
以前一直使用SetAcl来做自己的优化程序,前几天安装了个锋城的精简版Win10,发现用之前的SetAcl语句无法正常使用了,有没有直接使用VBS语句对注册表取得所有权,然后能重置某个子树权限的方法呢?
附上以前使用的程序片段:- SetRegACL("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{B4FB3F98-C1EA-428d-A78A-D1F5659CBA93}")
- WshShell.RegDelete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{B4FB3F98-C1EA-428d-A78A-D1F5659CBA93}\"
-
- Function SetRegACL(reg_path) '为当前用户设置注册表权限
- dim tmp1,tmp2,tmp3,sid
- Set tmp1 = Getobject("winmgmts:\\.") '取当前用户SID
- Set tmp3=tmp1.execquery("select sid from win32_userAccount where name='"&WshShell.ExpandEnvironmentStrings("%username%") &"'")
- For Each tmp2 In tmp3
- sid = tmp2.sid
- Next
- set tmp1=nothing
- set tmp3=nothing
- tmp1=chr(34) & reg_path & chr(34) & " -ot reg -actn setowner -ownr " & chr(34) & "n:" & sid & ";s:y" & chr(34)
- tmp2=chr(34) & reg_path & chr(34) & " -ot reg -actn ace -ace " & chr(34) & "n:"
- WshShell.Run chr(34) & my_dir & "data\setacl.exe" & chr(34) & " -on " & tmp1,0,true '先获得所有权
- WshShell.Run chr(34) & my_dir & "data\setacl.exe" & chr(34) & " -on " & tmp2 & WshShell.ExpandEnvironmentStrings("%username%") & ";p:full",0,true '再设置用户权限
- End Function
复制代码
完整程序请移步:http://bbs.dp168.com/thread-90732-1-1.html
作者: CrLf 时间: 2015-12-19 16:51
ini
作者: 707093864 时间: 2015-12-19 17:17
用wmic试试看
作者: 9zhmke 时间: 2015-12-19 20:35
本帖最后由 9zhmke 于 2015-12-19 20:36 编辑
回复 2# CrLf
一直以为Regini也是第三方软件,刚在WIN10里敲了下,居然内置了。
作者: 9zhmke 时间: 2015-12-19 20:38
用wmic试试看
707093864 发表于 2015-12-19 17:17
貌似不行,很早前找到过一个脚本,很长很大很复杂,大约是只能实现权限部分,没有获取所有权功能。
作者: 9zhmke 时间: 2015-12-23 11:12
ini
CrLf 发表于 2015-12-19 16:51
由于不太熟和没足够时间一直没弄。刚试过了regini的功能,貌似不能获取控制权啊?
系统:Windows10 x64
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{031E4825-7B94-4dc3-B131-E946B44C8DD5}\DefaultIcon [1 7 17]
默认权限:
SYSTEM Administraotr 只读 / Trustedinstaller完全 / 所有者SYSTEM
将此句写入到regini.ini文件中并用regini regini.ini配置没有提示:HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{031E4825-7B94-4dc3-B131-E946B44C8DD5}\DefaultIcon [1 7 17]
进注册表看内容仍然没有改变,怎样设置取得所有权呢?
作者: wskwfkbdn 时间: 2016-1-17 22:42 标题: 标题
回复 5# 9zhmke
系统里面本来就有滴
作者: 9zhmke 时间: 2016-1-18 11:23
本帖最后由 9zhmke 于 2016-1-18 11:25 编辑
回复 7# wskwfkbdn
是的,已经搞定,以后不再用外置软件了,感谢各位的帮助、指导
作者: ygqiang 时间: 2016-1-18 15:50
回复 8# 9zhmke
最后解决的代码是?
作者: 9zhmke 时间: 2016-1-19 19:56
回复 9zhmke
最后解决的代码是?
ygqiang 发表于 2016-1-18 15:50
在楼顶的链接已给出了
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |