gpt4 book ai didi

.net - 如何在生产机器上嗅探 .NET 中捕获的异常?

转载 作者:行者123 更新时间:2023-12-02 15:43:32 28 4
gpt4 key购买 nike

有没有办法从应用程序外部查找 .NET 代码捕获的异常?

我发现 3d party API 抛出异常并抑制它(我看到性能计数器上升)。

但它没有在跟踪中显示它(我尝试了 sysinternals dbgView)。

什么工具可以显示捕获的异常?

最佳答案

在这种情况下我总是求助的工具是WinDBG。下载32bit version64bit version ,取决于进程的位数。

由于某些蹩脚的原因,最新版本没有直接下载链接(仅在 SDK 中提供),因此请跳至“先前版本”部分并获取最新版本。

安装后加载WinDBG并执行以下操作:

  1. 文件 -> 附加到进程 (F6)
  2. 选择目标进程并点击“打开”
  3. 在控制台中输入以下内容:
  • .loadby sos mscorwks(这会加载 .NET 调试器扩展)- sxe clr(告诉调试器在托管异常时中断)- g(开始!)
  • 运行该进程,直到发生异常。
  • 调试器将中断,此时输入 !pe 查看异常详细信息。
  • !clrstack 命令对于查看托管堆栈或尝试 !dumpstack 包含 native 调用非常有用。

    如果调试器因您不关心的异常而停止,只需再次按“g”,直到得到您想要查看的异常。

    !help 命令将显示所有可用的 .NET 扩展,如果您想深入了解,我强烈推荐 Tess Ferrandez's blog .

    关于.net - 如何在生产机器上嗅探 .NET 中捕获的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3097493/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com