【发布时间】:2015-11-22 12:46:25
【问题描述】:
我有一个使用procdump -ma 创建的小型转储(故障转储)。我可以在 VS2013 和 WinDbg 上打开它,但是我需要知道哪些环境变量被发送到该进程。有没有办法在不编写内存解析器的情况下做到这一点?
【问题讨论】:
标签: .net windows visual-studio visual-studio-2013 crash-dumps
我有一个使用procdump -ma 创建的小型转储(故障转储)。我可以在 VS2013 和 WinDbg 上打开它,但是我需要知道哪些环境变量被发送到该进程。有没有办法在不编写内存解析器的情况下做到这一点?
【问题讨论】:
标签: .net windows visual-studio visual-studio-2013 crash-dumps
假设您有正确的符号,windbg 中的!peb 应该可以满足您的需求。
【讨论】:
在 Visual Studio 2015 社区版中,
File | Open | File ...打开转储
Debug | Windows | Memory打开内存窗口
$env 作为地址。No data
Unicode text
不幸的是,换行符(实际上是'\0' / 0x00)不可能以这种方式正确显示。
在 WinDbg 中,正如另一个答案中已经提到的,使用 .symfix c:\symbols; .reload; !peb。
【讨论】:
!peb 转储时遇到问题,请参阅 known issue with symbols
这适用于 Visual Studio 2017:
【讨论】: