我想知道为什么在 .NET(C# 或 VB.NET 应用程序)中发生未处理的异常时,为什么在某些计算机上会显示不同的对话框。
例如,在某些计算机上,它显示类似于:
而在其他人身上,它显示如下:
我想在将我的应用程序用于某些特定目的的所有系统中的第二个(您的应用程序中发生未处理的异常)中显示它。
请不要建议使用全局异常处理方法。
好吧,您标记为正确的行为可以通过启用和禁用 JIT(即时调试器)来控制。
也许这可以帮助你,或者只是让你走上正确的轨道:MSDN: How to: Enable/Disable Just-In-Time Debugging
我没有任何建议,但实践是最终用户永远不应该得到这种异常,尤其是堆栈跟踪。
一些应用程序启用了 JIT 调试:
http://msdn.microsoft.com/en-us/library/5hs4b7a6.aspx
具体来说,在 .NET app.config 中,您可以添加:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>