Windows-Server-2008

Windows Server 2008 上的 regsvr32 問題

  • September 29, 2014

我正在嘗試在 Windows Server 2008 標準框上註冊一個基本的 COM dll。

我跑regsvr32 capicom.dll,它報告DllRegisterServer in capicom.dll succeeded。這與我們多年來在 Windows Server 2003 上使用的過程相同。

可悲的是,當我嘗試通過一個非常非常基本的 Microsoft vbscript 範例Set oStore = CreateObject("CAPICOM.Store")創建對象時,它會引發“ActiveX 組件無法創建對象”錯誤。

考慮可能是這個 dll 的問題,我嘗試了其他一些我們使用的 DLL,結果相同。我嘗試在 system、system32 和 syswow64 中使用 regsvr32,結果都一樣。我不太了解它們之間的差異,但認為值得一試。

dll 儲存在 d:\ 上,並且似乎具有正確的權限(儘管這完全是一個不同的錯誤)。

*更新:通過額外的測試,我們已經確定(通過依賴walker)ieshims.dll 和linkinfo.dll 失去。他們在機器上,但報告為找不到。capicom.dll 和內部開發的 dll 都是如此。

感謝您可能有的任何幫助或想法!

wscript 似乎在 64 位模式下執行,無法看到註冊…按照http://forums.iis.net/t/1154189.aspx上的說明,我能夠在 32 位模式下執行 createobjects (通過經典的 asp)並且組件按應有的方式工作。感謝大家的幫助!

您可以嘗試使用Dependency Walker打開您的 DLL 。如果您缺少 capicom.dll 所依賴的 DLL,Dependency Walker 將幫助您找到它們。

引用自:https://serverfault.com/questions/140380