用于在不是所有dll

时间:2017-12-08 04:05:23

标签: batch-file dll

我有大约5-10个DLL,其中100个将在构建期间注册,在整个构建完成后未注册,所有DLL都在一个文件夹中。为了注册,我写了一个post build事件,但是现在要取消注册这些5-10的DLL中的100个似乎无法得到任何想法,我是批处理脚本的新手,所以早点搞砸。我搜索了一些地方,但都展示了如何在文件夹中注册/取消注册所有文件而不是特定的DLL编写预注册事件来取消注册似乎无法用于构建解决方案的重建选项

1 个答案:

答案 0 :(得分:1)

这是一种使用包含*.dll名称的文本文件到Register Unregister

的方法
@echo off

::For /f will look for *.dll names in files.txt 
::Than Do register/unregister *.dll as specified in regsvr32
::

for /f %%i in (files.txt) do regsvr32 /u /s C:\Windows\System32\%%i

exit

For /? 寻求帮助

使用

FOR /F %variable IN (file-set) DO command [command-parameters]

RegSvr32命令用法

Usage: regsvr32 [/u] [/s] [/n] [/i[:cmdline]] dllname
/u -    Unregister server
/s -    Silent; display no message boxes
/i -    Call DllInstall passing it an optional [cmdline]; when used with /u calls dll uninstall
/n -    do not call DllRegisterServer; this option must be used with /i