DLL寄存器存在于文件夹中

时间:2013-09-08 09:49:42

标签: batch-file dllregistration

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

提前致谢。

1 个答案:

答案 0 :(得分: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