C#调用C++DLL的小总结5---和C++的DLL的联合调试

Posted 鹰杰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#调用C++DLL的小总结5---和C++的DLL的联合调试相关的知识,希望对你有一定的参考价值。

http://fpcfjf.blog.163.com/blog/static/5546979320134922938373/

http://blog.csdn.net/jiangxinyu/article/details/7848015

关于托管平台和非托管平台的经验,现在有一个问题,就是如果调用C++的DLL,复杂一些的数据传递,或者DLL将数据再传递。

调试下断点看内存中的数据是最好的方法,由于C#是在托管平台上的,而C++DLL是在非托管平台上的。内存的格式有所不同,为此微软已提出相关解决方案:

第一步:在C#的解决方案上右键“属性”---“调试”---勾选“启用非托管代码调试”。

第二步:同样的在“调试”选项下---“启动选项”---“工作目录”,然后点击下图中的箭头指向的按钮,在弹出的对话框中,指定C++DLL的生成目录(即xx.lib xx.dll所在的路径)

第三步:启动C#的EXE,下断点调试即可

以上是关于C#调用C++DLL的小总结5---和C++的DLL的联合调试的主要内容,如果未能解决你的问题,请参考以下文章

C#调用C++编的dll文件里的方法报错

C#调用C++编的dll文件里的方法报错

C++ dll 回调C# 程序总结

C#调用dll时的类型转换总结

在 C++ DLL 和 C# 类之间来回传递变量

C++ dll 和 C# 调用