0

我在一个文件夹中有很多 dll。我想通过运行一个批处理文件一次性注册所有这些 dll,这样我就不必一个一个地注册每个 dll。请帮我为它生成一个批处理文件。

提前致谢 。

4

1 回答 1

2

好的,这应该工作:

代码:

@echo off
pushd C:\...[path to file]
for /r %%a in (*.dll) do (
Rem Put the instance of the REG command you want to use here
Rem (refer to file as %%a)
Rem e.g. | REG add %%a

Echo Registering %%a . . .
)
popd
Echo.
Pause | Echo Registration Complete: Program will now Exit
Exit

几乎for /r通过当前目录(和子目录)执行递归搜索。

键入for /?以获取更多信息或询问您是否需要进一步的解释。

解释:

在上面的代码中,所有使用的命令和解释如下:

  • Echo- 在屏幕上显示一条消息。
  • @echo- 打开Echo或关闭。将其关闭将禁止控制台显示提示。也就是说,用户不会看到批处理文件正在执行什么命令,只会看到您告诉批处理文件的内容Echo以及使用的任何其他命令的输出。
  • pushd- 将当前目录命令提示符搜索更改为指定路径(并存储以前的目录以方便)
  • popd- 转到(相对于pushd)中的最后一个目录
  • for /r- 执行为当前和子目录中的每个文件指定的命令,其中创建的变量(在本例中%%a)是文件名
  • Reg- 用于注册
  • Rem- 批处理文件中的注释:这些行是被忽略的注释
  • Pause- 等待用户输入
  • Exit- 出口

例子:

@echo off
pushd c:\MyDll 
for /r %%a in (*.dll) do (
Reg /add %%a
Echo Registering %%a . . .
)
popd
Echo.
Pause | Echo Registration Complete: Program will now Exit
Exit
于 2013-09-08T10:01:56.650 回答