1

我有一个 NET 4.0 应用程序,它在运行时会导致未处理的异常。当我从 VS2010 运行它时,它会在异常行上中断,我可以保存转储。当我稍后加载转储时,我准确地到达了崩溃的地方,并且能够看到局部变量的值。

我已经在 Win 7 中启用了故障转储收集(即使禁用了 Windows 错误报告也会收集用户模式转储)。

当我加载由 WER 创建的转储时,我只能看到本机代码中发生异常的位置(即使我开始混合模式调试)。

是否有可能实现与 WER 和 VS 转储类似的行为?

4

2 回答 2

2

这一系列视频帮助我解决了类似的情况。在其中,演示者解释了如何从托管和非托管代码中捕获和处理故障转储,以解决常见问题,例如生产系统中的内存泄漏和性能问题:

http://channel9.msdn.com/Series/-NET-Debugging-Stater-Kit-for-the-Production-Environment/Diagnosing-Application-Issues-01

于 2012-05-24T13:18:09.023 回答
0

我做了一些研究,偶然发现了关键信息。必须禁用选项/调试中的“仅我的代码”选项才能查看应用程序源代码。否则,应用程序代码隐藏[External code]在堆栈跟踪中,因此无法访问。

于 2012-05-24T13:16:43.897 回答