我正在尝试为我的winform应用程序启用JIT调试,我想使用Dr Watson来转储堆栈跟踪,但是当我的应用程序上发生异常时,我得到一个.NET对话框(继续或退出),此框中的详细信息表示我必须更改machine.config或此应用程序的app.config中的某些值
我会尝试添加这个:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
到我的App.config
但是每次发生异常时都会显示相同的框,我尝试使用调试版和发行版(以及带有pdb文件的调试版)
如何摆脱此对话框并启用JIT?我想当我这样做时,我将能够使用Dr Watson(顺便说一句,我已经运行了Drwtsn32.exe -i,并且该机器上没有安装VS)
答案 0 :(得分:3)
在Application.Run()调用之前将此行添加到Main()方法:
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.ThrowException);
这将禁用ThreadExceptionDialog并跳转AppDomain.UnhandledException事件。我怀疑你会从Watson中得到一个堆栈跟踪。您最好通过为AppDomain.UnhandledException编写处理程序来创建自己的。