1
6
首先,确保在项目属性的“调试”选项卡中启用了本机代码调试。 如果您有要调用的dll的源代码,那么您应该能够设置它,这样您就可以像处理托管代码一样进入本机dll。最简单的方法是在同一个解决方案中添加本机dll的源代码,然后链接到该项目的输出。您需要确保Visual Studio可以在运行C应用程序时访问本机dll和该dll的pdb。 如果没有dll的源代码,那么我建议在调用本机方法之前设置一个断点。然后,让程序继续运行,并在一两秒钟后手动暂停程序。确保您仍在查看调用本机dll的同一线程,然后查看调用堆栈查看器。如果您看到一行显示“[外部代码]”,请确保选中上下文菜单中的“显示外部代码”。如果选中该选项,调用堆栈可能能够告诉您当前正在执行的方法。文本将为灰色,表示该方法位于外部dll中。如果正在进行Windows方法调用,则首先安装Windows符号文件可能会允许调试器向您提供更多信息。( http://www.microsoft.com/whdc/devtools/debugging/symbolpkg.mspx )您还可以暂停并继续调试程序几次,以查看调用堆栈在不同执行点的外观。从这些信息中,您可能能够了解出哪里出了问题。 另外,尝试传递不同的参数,从最简单的情况开始,看看是否有相同的行为。最后,确保您的所有编组元数据都是正确的。 |
Emopusta · 从后端到前端的图像路径不工作 2 年前 |
Asdrubal Hernandez · Linq查询特定数组索引出错 2 年前 |
Niyazi Babayev · 如何在表达式中动态应用表达式? 2 年前 |
Dansih · .Net核心自定义身份验证方案 2 年前 |
lolorekkk · 面板插入。NET WinForm 2 年前 |