当您使用windbg打开转储时,它会输出如下内容:
加载转储文件[\ serverX \ dumpfiles \ myapp.dmp]
具有完整内存的用户迷你转储文件:仅提供应用程序数据 ...
我如何在将来的任何时候向windbg索取该信息? 例如,我跑了
.cls
.wtitle foo
现在已经走完了。
我可以获得其他文件特定信息(不与崩溃相关) 例如日期时间戳?
答案 0 :(得分:0)
除了再次打开转储之外,没有简单的方法可以获取信息(尝试.restart
)。但是有一些模仿类似行为的命令。我会逐行完成这些。
Microsoft(R)Windows调试器版本10.0.15003.1001 X86
版权所有(c)Microsoft Corporation。保留所有权利。
该信息是version
命令的一部分。
加载转储文件[D:... \ demo.dmp]
这也显示在version
中,如果您想减少输出,可以使用||
。
具有完整内存的用户迷你转储文件:只有应用程序数据可用
此信息无法直接访问。 ||
命令告诉您它是用户模式转储。要获取用于创建转储的确切标志,请使用
.shell -ci ".dumpdebug" findstr "MiniDump"
*************符号路径验证摘要**************
响应时间(ms)位置
延迟SRV * f:\ debug
\ symbols * https://msdl.microsoft.com/download/symbols
符号搜索路径为:SRV f:\ debug \ symbols https://msdl.microsoft.com/download/symbols
您可以使用.sympath
查看符号路径信息。
可执行搜索路径为:
请使用.exepath
。
Windows 7版本7601(Service Pack 1)MP(2 procs)免费x86兼容
产品:WinNt,套件:SingleUserTS Personal
6.1.7601.18015(win7sp1_gdr.121129-1432)
机器名称:
调试会话时间:Tue Jun 10 17:41:42.000 2014(UTC + 1:00)
系统正常运行时间:0天0:27:20.402
处理正常运行时间:0天0:00:27.000
您可以通过vertarget
获得该作品。
此转储文件存储在其中的兴趣例外。
存储的异常信息可以通过.ecxr访问 (e40.a44):访问冲突 - 代码c0000005(第一次/第二次机会不可用)
我总是使用.exr -1
,但输出并不接近。
eax = 00000000 ebx = 0039f4a4 ecx = 00000000 edx = 00193d1c esi = 022924f8 edi = 0039f3ec
eip = 0024008d esp = 0039f3d8 ebp = 0039f3f8 iopl = 0 nv up ei pl nz na po nc
cs = 0023 ss = 002b ds = 002b es = 002b fs = 0053 gs = 002b efl = 00010202
0024008d 8b01 mov eax,dword ptr [ecx] ds:002b:00000000 = ????????
这些寄存器可以通过r
访问,通常是线程0,所以~0s;r
应该可以解决问题。
答案 1 :(得分:0)
使用!dumptype
C:\>kd -c "!dumptype;q" -z e:\testdumps\MEMORY.DMP | grep -A 5 initial
kd> kd: Reading initial command '!dumptype;q'
e:\testdumps\MEMORY.DMP
Mini
TYPE: 6130d710
quit:
C:\>