问题标签 [crash-dumps]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - 尝试读取转储时“无法加载符号”
我有一个应用程序有时会在 Win XP 机器上导致蓝屏死机。为了了解更多信息,我加载了生成的 *.dmp 文件(来自 C:\Windows\Minidump),但是在执行此操作时在大部分读数中都会收到此消息:
这是什么意思,我该如何“修复”它?
windows - 从 Windows 用户模式转储文件中识别主机
有没有一种简单的方法可以找出通过 WinDbg 生成用户模式转储文件的机器的主机名?
或者至少任何一条识别信息来尝试确认两个转储文件来自同一个系统。
winapi - 故障转储中的模块版本
当进程从调用 MiniDumpWriteDump 函数的进程生成的崩溃转储中崩溃时,有没有办法找出加载到进程地址空间中的模块版本?换句话说,是否有任何版本信息存储在 dmp 文件中?
谢谢。
winapi - 查看故障转储中的寄存器
有没有办法在故障转储中查看每个堆栈帧中的寄存器内容?寄存器窗口似乎包含发生异常时的寄存器,但能够在每个堆栈帧中查看它们的内容会很有用。
winapi - 使用 Windbg 获取第 3 方模块的列表?
我正在使用 windbg 检查应用程序发送的一些故障转储。我看到的崩溃与将某个第 3 方 DLL 加载到进程中(我怀疑是一个不稳定的 Winsock LSP)之间似乎存在某种关联。为了让这种分析在未来更容易,是否有一个 windbg 脚本可以显示非 Microsoft 模块的列表?这将使崩溃之间的模式对我来说更加明显。我正在使用“lm D sm”,但现在手动浏览列表很痛苦。
谢谢!
debugging - 如何最好地在 WinDBG 崩溃脚本中为可执行名称命名?
背景资料
为了保存故障转储,我在注册表项cdb.exe
的Debugger
值中传递了一个脚本:AeDebug
这是脚本的第一部分:
问题
使用符号,这完全符合我的意愿,我得到具有合理名称的日志文件,例如:
LHCBDRDT.exe_process_147c_2009-01-06_23-10-05-371.log
但是,如果符号不可用,我会得到一个这样的日志文件名:
${CrashFirstModule}_process_17a8_2009-01-06_23-10-01-124.log
这是因为 alias 命令设置别名失败。别名命令是我从DumpAnalysis.org 获得的。此命令从图像的 PEB 标头中提取名称,使用ntdll.dll
. 没有操作系统的符号,它不知道在哪里可以找到它从 ntdll.dll 调用的函数。
问题
有谁知道或有命令将图像的名称作为别名用于在这些情况下仍然有效的文件名?
windows - Windows Server 故障转储分析
我不确定这是回答这个问题的正确地点,但我的一个程序员朋友说我应该在这里试试这个。
我公司的主要应用程序托管在运行 Windows Server 2008 的终端服务器上。自上周四以来,我们已经看到这台服务器崩溃并重新启动了 3 次,而我们刚刚在上周二启用了这台服务器。我已经使用 WinDbg 程序来分析故障转储文件,但此时我的深度有点超出预期,我希望有人可以帮助我解决这个问题。
在我看来有问题的应用程序是 winoac.exe,它是 SmartWare 4.5 (www.smartware4.com) 的可执行文件。这是我们的应用程序运行的平台。如果这个应用程序有问题,除了向 SmartWare 投诉外,我能做些什么吗?
感谢任何可以提供帮助的人一百万。
以下是分析结果。
.net - 捕获内存转储 - .NET
寻找有关在用户在终端服务下运行时捕获内存转储的方法的建议。我曾尝试在 WinDbg 中使用“AdPlus”,但该应用程序在终端服务下运行,它似乎不喜欢这种组合。
这是一个 VB.NET 应用程序。
我的问题类似于用于分析 .NET 应用程序内存转储的工具,但需要允许应用程序在没有外部对话框的终端服务下运行。我在安静模式下尝试了 WinDbg,但它使会话崩溃。
c# - 如何强制 WCF 线程中未处理的异常使进程崩溃?
所以这是场景:
我有一个 WCF 服务,它为每个操作定义了一堆 FaultContracts。我想安排它,如果在与有效的 FaultContract 不匹配的 WCF 服务线程中引发未处理的异常,它会关闭整个进程而不仅仅是线程。(原因是我想要一个包含异常信息的故障转储,因为它与合同不匹配。)
有没有办法干净地做到这一点?我遇到的主要问题是 WCF 想要将我的所有异常转换为客户端故障,以保持服务运行;我其实是想把整个过程搞下来,这本质上意味着规避 WCF 的正常行为。
c# - 查找与机器地址匹配的源代码
我正在调试一个故障转储,我很清楚进程在哪个地址崩溃。源代码是用 C# 编写的。我的问题是找到与崩溃地址相关的匹配源代码的任何快速方法?