The solution to the lack of permission to delete/modify the registry in Windows
在注册表的某些关键项(譬如:System、Root),连Administrator都没有权限进行修改,因为只有“system”有权限。
【方法一】
使用 psexec.exe,以 system 身份打开 regedit.exe,这样便可以直接修改,
命令:
psexec.exe -i -d -s regedit.exe
【方法二】
使用regini命令修改注册表键值及权限
其使用格式如下:
1
|
regini regini.ini |
这个命令需要一个ini文件 ,其中regini.ini的格式为:
1
2
|
注册表项 [更改的权限] 注册表键数值=键值 |
例如:
1
|
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run [17 20] |
上面的意思是对HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
分别设置 Administrators组及System用户对其拥有完全访问权限
以下是对应的权限代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
1 - Administrators 完全访问 2 - Administrators 只读访问 3 - Administrators 读和写入访问 4 - Administrators 读、写入、删除访问 5 - Creator 完全访问 6 - Creator 读和写入访问 7 - everyone 完全访问 8 - everyone 只读访问 9 - everyone 读和写入访问 10 - everyone 读、写入、删除访问 11 - Power Users 完全访问 12 - Power Users 读和写入访问 13 - Power Users 读、写入、删除访问 14 - System Operators 完全访问 15 - System Operators 读和写入访问 16 - System Operators 读、写入、删除访问 17 - System 完全访问 18 - System 读和写入访问 19 - System 只读访问 20 - Administrators 读、写、执行访问 21 - Interactive User 完全访问 22 - Interactive User 读和写入访问 23 - Interactive User 读、写入、删除访问 |
通过命令行来实现:
1
2
3
4
5
6
|
set route=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\mian :fix del %tmp%\ko.ini /q echo %route% [参数] >>%tmp%\ko.ini regini %tmp%\ko.ini exit |