运行C#Windows窗体应用程序时出现此错误:
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组件是第三方dll,它肯定在相关机器上注册正常。我的项目是针对x86确定的。我只是在实例化组件的特定类时遇到错误,我使用的其他类工作正常。
我尝试过直接添加的组件作为参考,并且还创建了一个互操作程序集并引用了它,但得到了相同的结果。使用regsvr32取消注册并重新注册组件无济于事。
如果我在VB6应用程序中引用相同的组件并实例化同一个类,它工作正常!我很困惑,任何人都可以提供任何可能帮助我的建议吗?!
谢谢。
答案 0 :(得分:1)
我通过更改实例化行来实现此目的:
Component.MyObject test = new Component.MyObject();
到
Component.MyObject test;
在这个阶段不确定为什么它应该有用但是它确实可以继续!我还在实例化与new关键字一起使用的其他类。