如何调试来自本机代码的AccessViolationException

时间:2010-07-14 10:19:53

标签: c# .net visual-studio visual-studio-2008 access-violation

我正在编写托管代码,我正在使用托管绑定(qt4dotnet)作为非托管库(Qt)。偶尔,我得到一个来自Qt的AccessViolationException,但我不知道如何调试它。我甚至没有比托管/非托管边界更多地获得堆栈跟踪(这意味着我不知道Qt的哪个部分崩溃了)。

顺便说一句,我在VS调试器中运行我的应用程序。

如何调试异常?

2 个答案:

答案 0 :(得分:9)

Project + Properties,Debug选项卡,勾选“启用非托管代码调试”。这仍然不会让事情变得简单,但至少你可以在炸弹时查看非托管堆栈帧。确保你有Qt代码的.pdb文件。

答案 1 :(得分:1)

仅通过检查给调用本机代码的函数的参数。