在 asp.net web 服务中调用 COM DLL 时出错
我试图通过本地 Web 服务调用 COM 组件(位于组件服务中),但失败并出现以下错误:
类未注册(来自 HRESULT 的异常:0x80040154 (REGDB_E_CLASSNOTREG))
我创建了一个 C# Windows 应用程序,该应用程序执行以下 操作:完全相同的事情并且每次都可以很好地调用 COM 组件。我认为这是一个安全问题,因此我将“Everyone”添加到组件服务的访问权限中,但这没有帮助。有什么建议吗?这可能是 64 位相关的问题吗?
版本: VS2008、.NET 3.5、Windows 7、64 位
I am attempting to call a COM component (that lives in component services) via a local web service but it fails with the following error:
Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
I have created a C# windows app that does exactly the same thing and calls the COM component fine every time. I assumed this was a security issue so I have added Everyone to the access permissions for component services but this doesn't help. Any suggestions? Could it be a 64 bit related issue?
Versions:
VS2008, .NET 3.5, Windows 7, 64 bit
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 64 位版本的 Microsoft Windows 上,可以使用 WOW64 模拟器运行 32 位应用程序。但是,进程只能是 32 位或 64 位。您不能拥有同时运行两者的进程。
也尝试创建一个新的互操作 dll
On a 64-bit version of Microsoft Windows, it is possible to run 32-bit applications using the WOW64 emulator. However, processes can only be 32-bit or 64-bit. You cannot have a process that runs both.
Try creating a new interop dll too