regsvr32
regsvr32
(Register Server)是Microsoft Windows作業系統底下的指令,用來對COM檔和ActiveX檔做註冊及反註冊的動作,使之反應在登錄檔中。但搭配 regsvr32.exe 使用的 DLL,或者提供 DllRegisterServer
和 DllUnregisterServer
兩個输出函式,或者提供DllInstall
输出函数(可接受命令行参数)。
使用方式
regsvr32 foo.dll
:註冊 foo.dll
regsvr32 /u foo.dll
:反註冊 foo.dll
regsvr32 /i:"my_cmd_string" dllname.dll
:註冊dllname.dll
regsvr32 /u /i:"my_cmd_string" dllname.dll
:反註冊 dllname.dll
参数说明
Regsvr32 [/u] [/n] [/i[:cmdline]] dllname
/u – 反註冊
/i – 调用DllInstall带有可选参数[cmdline],第一个参数值为TRUE;当和/u一起使用时调用DllInstall,带有可选参数[cmdline],第一个参数值为FALSE.
/n – 不调用DllRegisterServer或DllUnregisterServer;该参数必须和/i一起使用; 如果没有/n,则/i在调用DllInstall时还调用了DllRegisterServer或DllUnregisterServer
/s – 静默模式;不显示对话框(Windows XP和Windows Vista中新增选项)
但要注意,如果目前目錄和預設系統目錄(C:\windows, C:\windows\system32)都有名為 foo.dll 的檔案,那麼,regsvr32 只會用系統目錄下的檔案,而不會用目前目錄下的檔案。解決辦法是加上全路徑,例如 c:\temp\foo.dll;或是使用底下語法:
regsvr32 .\foo.dll
參閱
- Microsoft TechNet 關於 Regsvr32 的文章(页面存档备份,存于互联网档案馆)
- 微软知识库249873(页面存档备份,存于互联网档案馆)
- Explanation of Regsvr32 Usage and Error Messages(页面存档备份,存于互联网档案馆)
- INFO: How Regsvr32.exe Registers and Unregisters COM DLLs(页面存档备份,存于互联网档案馆)
- WinTasks: regsvr32.exe - Process Information
- C# Frequently Asked Questions: What is the equivalent to regsvr32 in .NET?(页面存档备份,存于互联网档案馆)