我如何向 windbg 询问它已打开的转储文件的完整路径
How do I ask windbg for the fullpath of the dump file it has open
当您使用 windbg 打开转储时,它会输出如下内容:
Loading Dump File [\serverX\dumpfiles\myapp.dmp]
User Mini Dump File with Full Memory: Only application data is available
...
我以后如何随时向 windbg 询问该信息?
比如我运行
.cls
.wtitle foo
现在完整路径消失了。
是否有我可以获得的其他文件特定信息(与崩溃无关)
例如日期时间戳?
除了再次打开转储(尝试 .restart
)之外,没有简单的方法可以取回信息。但是有一些命令可以模仿类似的行为。我将逐行介绍这些内容。
Microsoft (R) Windows Debugger Version 10.0.15003.1001 X86
Copyright (c) Microsoft Corporation. All rights reserved.
该信息是 version
命令的一部分。
Loading Dump File [D:...\demo.dmp]
这在version
中也有显示,如果你想要更少的输出,你可以使用||
。
User Mini Dump File with Full Memory: Only application data is available
无法直接访问此信息。 ||
命令告诉您这是一个用户模式转储。要获取用于创建转储的确切标志,请使用
.shell -ci ".dumpdebug" findstr "MiniDump"
************* Symbol Path validation summary **************
Response Time (ms) Location
Deferred SRV*f:\debug
\symbols*https://msdl.microsoft.com/download/symbols
Symbol search path is: SRVf:\debug\symbolshttps://msdl.microsoft.com/download/symbols
您可以通过.sympath
查看符号路径信息。
Executable search path is:
为此使用 .exepath
。
Windows 7 Version 7601 (Service Pack 1) MP (2 procs) Free x86 compatible
Product: WinNt, suite: SingleUserTS Personal
6.1.7601.18015 (win7sp1_gdr.121129-1432)
Machine Name:
Debug session time: Tue Jun 10 17:41:42.000 2014 (UTC + 1:00)
System Uptime: 0 days 0:27:20.402
Process Uptime: 0 days 0:00:27.000
您可以通过 vertarget
获得。
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr.
(e40.a44): Access violation - code c0000005 (first/second chance not available)
我总是使用 .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
应该可以解决问题。
使用 !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:\>
当您使用 windbg 打开转储时,它会输出如下内容:
Loading Dump File [\serverX\dumpfiles\myapp.dmp]
User Mini Dump File with Full Memory: Only application data is available ...
我以后如何随时向 windbg 询问该信息? 比如我运行
.cls
.wtitle foo
现在完整路径消失了。
是否有我可以获得的其他文件特定信息(与崩溃无关) 例如日期时间戳?
除了再次打开转储(尝试 .restart
)之外,没有简单的方法可以取回信息。但是有一些命令可以模仿类似的行为。我将逐行介绍这些内容。
Microsoft (R) Windows Debugger Version 10.0.15003.1001 X86
Copyright (c) Microsoft Corporation. All rights reserved.
该信息是 version
命令的一部分。
Loading Dump File [D:...\demo.dmp]
这在version
中也有显示,如果你想要更少的输出,你可以使用||
。
User Mini Dump File with Full Memory: Only application data is available
无法直接访问此信息。 ||
命令告诉您这是一个用户模式转储。要获取用于创建转储的确切标志,请使用
.shell -ci ".dumpdebug" findstr "MiniDump"
************* Symbol Path validation summary **************
Response Time (ms) Location
Deferred SRV*f:\debug
\symbols*https://msdl.microsoft.com/download/symbols
Symbol search path is: SRVf:\debug\symbolshttps://msdl.microsoft.com/download/symbols
您可以通过.sympath
查看符号路径信息。
Executable search path is:
为此使用 .exepath
。
Windows 7 Version 7601 (Service Pack 1) MP (2 procs) Free x86 compatible
Product: WinNt, suite: SingleUserTS Personal
6.1.7601.18015 (win7sp1_gdr.121129-1432)
Machine Name:
Debug session time: Tue Jun 10 17:41:42.000 2014 (UTC + 1:00)
System Uptime: 0 days 0:27:20.402
Process Uptime: 0 days 0:00:27.000
您可以通过 vertarget
获得。
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr.
(e40.a44): Access violation - code c0000005 (first/second chance not available)
我总是使用 .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
应该可以解决问题。
使用 !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:\>