[英]How to make a batch file execute a reg file
我有以下代码
@echo off
file.reg
pause
这可以工作但是当批处理文件被提升时,我收到一条错误,说它无法找到该文件。 有没有人知道我做错了什么。
@echo off
rem set __COMPAT_LAYER=RunAsInvoker
REGEDIT.EXE /S "%~dp0\file.reg"
pause
试试这个
如果您在注册表中访问不需要管理员权限的位置,则可以使用__COMPAT_LAYER
环境变量。在使用regedit之前执行此操作:
set __COMPAT_LAYER=RunAsInvoker
如果您的脚本未以管理员身份运行,则会阻止UAC弹出。
也许,以较高权限启动批处理会将起始目录更改为%windir%\\system32
( cmd.exe
所在的路径)。
使用:
"%~dp0\file.reg"
始终执行与批处理文件位于同一目录中的file.reg
。
还要考虑使用REG
命令,因为它允许您在注册表上执行控制台操作(检查REG /?
)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.