使用.bat启动regfile

时间:2013-12-24 11:23:46

标签: batch-file registry

我在批处理文件中有以下代码:

@echo on
regedit.exe /S abc.reg

如果我运行它,我会收到如下错误:

我在谷歌搜索了这个并没有找到任何结果。有谁可以帮助我吗? 我试过了: - 删除/ S(我可以阅读(当然)错误消息 - 以管理员身份运行文件(默认情况下我是管理员)

我正在使用Windows 8。 错误消息:“无法导入C:\ users .... abc.reg”。打开文件时出错。可能存在磁盘或文件系统错误。

两个文件都在同一个文件夹中。 enter image description here

4 个答案:

答案 0 :(得分:2)

以更简单的方式将其作为计划任务运行。

通过这种方式,您可以将批处理文件作为管理员运行,而无需烦人的密码提示。

有关更多有价值的信息,请在此处阅读...

http://forums.whirlpool.net.au/archive/2037875

http://social.technet.microsoft.com/Forums/systemcenter/en-US/be854b0a-5d41-4b03-9a84-8fe79732f33c/run-bat-file-to-call-reg-file-in-sccm?forum=configmgrswdist

http://www.myitforum.com/articles/1/view.asp?id=12036

答案 1 :(得分:2)

右键单击aix2_mm.bat并选择“以管理员身份运行”,您将获得一个您必须同意的全屏UAC提示,然后它将起作用。

如果您没有看到“以管理员身份运行”选项,请在右键单击之前按住Shift键。

让您的批次更加portable并不会有什么坏处。 %~dp0参数将扩展为ABC.reg的完整路径,如果它与.bat文件位于同一文件夹中。

@echo on
regedit.exe /S "%~dp0abc.reg"

答案 2 :(得分:2)

问题是,我以错误的方式处理了%~dp0。 %~dp0代表默认路径,但您不必在其后设置反斜杠!

如果要在与.bat文件相同的文件夹中运行.reg文件,只需按以下方式编写:

@echo on
REGEDIT /S "%~dp0ABC.reg"

这将在同一文件夹中运行文件ABC.reg。

如果你不想在子文件夹中运行某些东西,你必须这样做:

@echo on
REGEDIT /S "%~dp0SUBFOLDER\ABC.reg"

如果路径名中有空格,则只需要括号(“”)。

答案 3 :(得分:1)

小心工作目录

我的bat文件总是有第一行的代码

cd /d %~dp0

它可以安全地将当前目录更改为您的bat文件目录