我试图运行CMD(bat文件)这一章的代码,但我不能使它工作。 我在哪里做错了吗?
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Control Panel]
"HomePage"=dword:00000001
它的工作原理,如果我让一个reg文件并双击。
bat文件的代码(这是不行的,没有错误):
@echo off
reg add "HKCU\Software\Policies\Microsoft\Internet Explorer\Control Panel" /V HomePage /T REG_DWORD /F /D 1
导入.reg文件时,您可能会得到一个UAC提示。 如果你接受,你有更多的权利。
既然你写的“政策”键,你需要有提升的权限。 注册表的这部分的保护,因为它包含由系统管理员进行管理设置。
或者,您可以尝试运行regedit.exe
从命令提示符。
regedit.exe /S yourfile.reg
..应该静静导入reg文件。 见regedit命令行选项语法的多个命令行选项。
在命令行中,最好使用REG工具,而不是REGEDIT:
REG IMPORT yourfile.reg
REG被设计用于控制台模式,而REGEDIT为图形模式。 这就是为什么运行REGEDIT.EXE / S yourfile.reg是一个坏主意,因为你不会得到通知,如果有一个错误 ,而REG工具会提示:
> REG IMPORT missing_file.reg
ERROR: Error opening the file. There may be a disk or file system error.
> %windir%\System32\reg.exe /?
REG Operation [Parameter List]
Operation [ QUERY | ADD | DELETE | COPY |
SAVE | LOAD | UNLOAD | RESTORE |
COMPARE | EXPORT | IMPORT | FLAGS ]
Return Code: (Except for REG COMPARE)
0 - Successful
1 - Failed
For help on a specific operation type:
REG Operation /?
Examples:
REG QUERY /?
REG ADD /?
REG DELETE /?
REG COPY /?
REG SAVE /?
REG RESTORE /?
REG LOAD /?
REG UNLOAD /?
REG COMPARE /?
REG EXPORT /?
REG IMPORT /?
REG FLAGS /?
如果没记错的正确, reg add
,如果不存在,命令将不会创建整个目录路径。 这意味着如果任何父注册表键不存在,那么它们必须手动逐个创建。 这实在是烦人,我知道了! 例:
@echo off
reg add "HKCU\Software\Policies"
reg add "HKCU\Software\Policies\Microsoft"
reg add "HKCU\Software\Policies\Microsoft\Internet Explorer"
reg add "HKCU\Software\Policies\Microsoft\Internet Explorer\Control Panel"
reg add "HKCU\Software\Policies\Microsoft\Internet Explorer\Control Panel" /v HomePage /t REG_DWORD /d 1 /f
pause
你也可以只创建一个组策略首选项,并让它为你创造了reg关键。 (没有脚本参与)