检索具有 CLSID 的组件的 COM 类工厂
我在 ASP.Net 网站中使用 VB6 DLL,当我添加 VB6 DLL 的引用时,它被添加为 Interop.X.DLL,并且正确编译和执行。但是当我在带有 IIS 6.0 的 Windows Server 2003 上发布该网站并执行时,出现错误 “由于以下错误,检索具有 CLSID {82EA3A98-AD80-4250-9EEF-5B8001F65091} 的组件的 COM 类工厂失败:80040154”
我尚未在 Windows Server 2003 上注册 interop.X.DLL。
请帮我解决这个问题。
I am using VB6 DLL in ASP.Net web site, when I add the reference of VB6 DLL it got added as a Interop.X.DLL and it compiled and executed properly. But when I published the website on Windows Server 2003 with IIS 6.0 and executed it gives the error
"Retrieving the COM class factory for component with CLSID {82EA3A98-AD80-4250-9EEF-5B8001F65091} failed due to the following error: 80040154"
I have not registered the interop.X.DLL on Windows Server 2003.
Please help me to solve this problem.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
COM 错误 80040154 表示您的 COM 组件尚未正确注册。
一个典型的问题是 IIS 通常在不同的帐户下运行。使用 regedit.exe 检查注册表,并确保注册存在于以下项中:
而不仅仅存在于 HKCU 或 HKCR 中。如果不存在,请使用管理员帐户向 regsvr32 重新注册 COM 组件。
如果您在 x64 版本的 Windows Server 上运行,请确保在 C:\Windows\SysWOW64 下选择 32 位版本的 regsvr32。
COM error 80040154 indicates that your COM component hasn't been properly registered.
A typical problem is that IIS usually runs under a different account. Check the Registry using regedit.exe and make sure the registration is present in the following key:
and not in HKCU or HKCR only. If it is not present, re-register the COM component with regsvr32 using an administrator account.
Should you be running on an x64 edition of Windows Server, make sure that you select the 32-bit version of regsvr32 under C:\Windows\SysWOW64.