我在我機智的一端試圖註冊一個COM程序集。我不斷收到這(而無益的錯誤),說明如何在Windows 7中註冊COM程序集?
Retrieving the COM class factory for component with CLSID {GuidID} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
該組件是寫在.NET 4.5庫的引用的一部分。該庫是.NET 4.5 Web服務中的參考。程序集是Interop.AssemblyName。我已驗證Interop.AssemblyName.dll存在於web服務的bin文件夾中。這些項目只是使用VS2012從.NET 2.0升級而來。
我試過用REGSVR32.exe(失敗,沒有DLLEntryPoint),gacutil.exe(說它安裝正確)和Regasm(32位和64位,都表示安裝成功)註冊程序集最後,我已經嘗試將構建輸出從「任何CPU」更改爲「x86」。
上面這些東西都沒有做任何事情來解決這個錯誤。在它決定運作之前,這個愚蠢的集會可能想要註冊哪些東西?
感謝Hans,這有助於爲我清除一些事情。我在哪裏可以找到條目?我在.csproj文件的xml中查找了引用interop的程序集和引用程序集的WebService。我沒有看到任何標籤。我還在使用ILSpy查看Interop,希望能夠找到線索,但沒有發現任何有用的東西。你有什麼其他的想法,我可以在哪裏搜索提示? –
Dave
好吧,我碰巧遇到了一個幸運的Google搜索,發現有人遇到了與Interop相同的問題。從他們的帖子中,我能夠找到相應的COM名稱。一旦我REGSVR32正確的.dll,我能擺脫運行時錯誤。感謝您的幫助。 – Dave