在64位操作系統(tǒng)中注冊COM組件時,使用regsvr32命令注冊成功,但在vbs文件中創(chuàng)建組件時失敗,提示未能找到相關(guān)的組件,Err.Munber=429。 下文就讓小編跟大家詳細的講解電腦64位操作系統(tǒng)中注冊32位COM組件的方法。
64位系統(tǒng)注冊32位COM組件教程:
根據(jù)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位系統(tǒng)中注冊32位COM組件時,應(yīng)該使用SysWoW64目錄下的regsvr32.exe命令。并且創(chuàng)建組件的程序應(yīng)該以管理員權(quán)限啟動,否則沒有足夠的權(quán)限,創(chuàng)建仍然失敗。
但當(dāng)在asp文件中創(chuàng)建組件時仍然會失敗,即使IE以管理員權(quán)限啟動,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復(fù)制到C:WindowsSysWOW64并運行C:WindowsSysWOW64regsvr32.exe注冊,這樣就會彈出:
DllRegisterServer 在 dynwrapx.dll 已成功。
其他32位COM組件的注冊方法是一樣的,順便說一下,最新版的DynamicWrapperX已經(jīng)有32和64兩種版本了。
以后大家在下載dll的時候,如果沒有64位的dll可以用這個方法,試試。