[英]Retrieving the COM class factory for component with CLSID {} failed
運行C#Windows Forms應用程序時出現此錯誤:
Retrieving the COM class factory for component with CLSID {} failed
due to the following error: 80040154 Class not registered (Exception
from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
這出現在32位Windows XP的IDE中。 有問題的COM組件是第3方dll,它在有關計算機上的確已確定注冊。 我的項目以x86為目標。 我只在實例化組件的特定類時才收到錯誤,我使用的其他類工作正常。
我嘗試使用直接添加為參考的組件,還創建了一個互操作程序集並對其進行了引用,但是得到了相同的結果。 使用regsvr32取消注冊並重新注冊了該組件,但無濟於事。
如果我在VB6應用程序中引用了相同的組件並實例化了相同的類,那么它將正常工作! 我感到非常困惑,任何人都可以提供任何可以幫助我的建議嗎?
謝謝。
我通過將實例化行從以下位置更改來實現了這一點:
Component.MyObject test = new Component.MyObject();
至
Component.MyObject test;
不確定在這個階段為什么應該這樣做,但是可以,所以我可以繼續! 我仍在實例化與new關鍵字一起使用的其他類。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.