繁体   English   中英

使用C#DLL时C ++应用无法初始化(0xc0000005)

[英]C++ app fails to initialize (0xc0000005), when using C# dll

我有一个C#DLL,可从本机C ++程序调用它。 由于我使用Qt和/ clr编译器选项不起作用,因此按照教程进行操作。

因此,我有一个VS2008项目(用/ clr编译),该项目链接到C#DLL,并包含bridge类和本机类,该类向我的C ++程序公开接口。 另一个VS2008项目(没有.net东西)调用了本机类(静态链接)。

我遇到了一些问题,但是现在程序至少可以编译了。 但是,如果尝试运行此程序,则在尝试使用本机类时会在初始化时收到(0xc0000005)错误。 在初始化时发生这种情况,我什至看不到哪个DLL无法初始化。 所有DLL应该放在正确的位置。

有什么提示吗? 谢谢。

我有个类似的问题; Qt与C ++和/ clr。 我做了一个托管类的包装,然后用Qt作为前端,然后得到警告……

看一下bytes.com上的讨论: 静态库中的__fastcall函数,不能从托管代码中调用吗?

那个家伙说用/clr编译的静态托管类与fastcall不兼容。

该项目(称为本机类)被静态链接到我的exe,这没有用。 我将其更改为DLL,现在似乎可以使用了。

我会再调查一点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM