Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Windows教程綜合 >> 關於windows >> 電腦64位操作系統中注冊32位COM組件的方法

電腦64位操作系統中注冊32位COM組件的方法

日期:2017/1/20 14:03:34      編輯:關於windows
 

在64位操作系統中注冊COM組件時,使用regsvr32命令注冊成功,但在vbs文件中創建組件時失敗,提示未能找到相關的組件,Err.Munber=429。 下文就讓小編跟大家詳細的講解電腦64位操作系統中注冊32位COM組件的方法。

64位系統注冊32位COM組件教程:

電腦64位操作系統中注冊32位COM組件的方法

根據http://support.microsoft.com/kb/249873的提示:
The 64-bit version is %systemroot%System32regsvr32.exe.
The 32-bit version is %systemroot%SysWoW64regsvr32.exe. 看著有64的目錄原來是32位程序
所以在64位系統中注冊32位COM組件時,應該使用SysWoW64目錄下的regsvr32.exe命令。並且創建組件的程序應該以管理員權限啟動,否則沒有足夠的權限,創建仍然失敗。
但當在asp文件中創建組件時仍然會失敗,即使IE以管理員權限啟動,Err.Munber=429。
下面是demon的補充:

以舊版的DynamicWrapperX為例,這是32位的COM組件,如果直接用regsvr32命令注冊,會彈出錯誤:

模塊“dynwrapx.dll”可能與您正在運行的 Windows 版本不兼容。檢查該模塊是否與 regsvr32.exe 的 x86 (32 位)或 x64 (64 位)版本兼容。

跟wscript.exe一樣,regsvr32.exe也有32位和64位兩個版本,用64位版本的regsvr32.exe無法注冊32位的COM組件。微軟也真是,難道就不能換個名字?64位的叫做regsvr64不就行了。

正確的做法是將dynwrapx.dll復制到C:WindowsSysWOW64並運行C:WindowsSysWOW64regsvr32.exe注冊,這樣就會彈出:

DllRegisterServer 在 dynwrapx.dll 已成功。

其他32位COM組件的注冊方法是一樣的,順便說一下,最新版的DynamicWrapperX已經有32和64兩種版本了。

以後大家在下載dll的時候,如果沒有64位的dll可以用這個方法,試試。


 
Copyright © Windows教程網 All Rights Reserved