我在asp.net应用程序中使用了一个activex/com对象(由Unify Vision应用程序生成)。我收到以下错误。IIS中的COM互操作问题 - 对象创建失败
System.InvalidCastException:创建从IClassFactory的CLSID {9C2D0002-3A17-11E0-8000-FC9865BE5C68}的COM组件的一个实例失败,原因是出现以下错误:80004002
我尝试以下方法
我试图在控制台应用程序中使用activex/com对象。在那里,我能够创建对象,并得到了结果(虽然应用程序挂在那之后)
如果我在Visual Studio中运行asp.net应用程序,内置web服务器(赌场)和文件系统作为选项(无需将其部署到IIS),它正在工作。
但是,当我将它部署到IIS时,它失败。即使我尝试模仿,注册表权限,并给予aspnet帐户/ iis启动器帐户管理员权限。 但没用。我尝试unistalling和重新安装的ActiveX/COM对象,但没有任何工作。
我目前用完想法。请帮忙。
感谢, sveerap
如果你为你的COM DLL在DllGetClassObject中设置了断点,那断点是否命中?你的对象的构造函数呢? – 2011-06-01 04:00:20
COM是第三方组件,不是由我们编写的。虽然我不确定'DllGetClassObject'方法。是我们可以写在COM上的东西吗?我在我的项目中添加了com作为参考,并像使用它一样使用它.net组件 – sveerap 2011-06-01 04:22:13
DllGetClassObject是DLL如何公开COM对象的一部分。如果这是第三方COM组件,组件供应商是否提供调试版本或源代码? – 2011-06-01 06:20:11