微软 C++异常:内存位置出现 _com_error
我在.Net 中创建了一个 COM dll,并在任何 CPU 下构建它。我在 Vcpp 代码中使用该 COM dll,但在创建对 COM 类的指针引用时出现 Microsoft C++ 异常:内存位置错误_com_error。如果构建配置是 Win32,则 VCPP 代码工作得很好,但如果我将配置更改为 X64 模式,那么应用程序就会崩溃。
请帮忙
I have created a COM dll in .Net and build it under Any CPU. I am using that COM dll in Vcpp code but getting Microsoft C++ exception: _com_error at memory location error when creating the pointer reference to COM class. The VCPP code works perfectly fine if the Build configuration is Win32 but if i change the configuration to X64 mode then teh application crashes.
Please Help
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
由于您使用的是所谓的进程内 DLL,因此您必须在程序中使用该 DLL 的 64 位版本。
这个问题讨论它。看来你必须使用 64 位 regasm 工具来注册你的 .NET DLL。
Since you're using a so-called in process DLL, you have to use the 64 bits version of that DLL in your program.
This question discusses it. It seems that you have to use the 64 bit regasm tool to register your .NET DLL.