故障转储中的模块版本
当进程因调用 MiniDumpWriteDump 函数生成的故障转储而崩溃时,是否有办法找出加载到进程地址空间的模块的版本? 换句话说,dmp 文件中是否存储有任何版本信息?
谢谢。
Is there a way to figure out versions of modules that were loaded into the process' address space when the process crashed from a crash dump that was generated by the process calling the MiniDumpWriteDump function? In other words, is any version information stored inside a dmp file?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将您的小型转储加载到 WinDbg 中,然后“调试”菜单上会出现一个“模块”项,其中显示校验和和时间戳信息。 对于您的目的来说,这可能已经足够了。
您可以通过在 WinDBG 的命令窗口中键入“LM v”来获取所有已加载模块的版本。 该列表很长,您会得到很多内容,包括产品和文件版本字符串。 但是,我认为它从加载的本地存储模块中获取此信息,确保它从用于将它们与符号文件匹配的校验和信息中获取正确的信息。
load your minidump into WinDbg, then there's a Modules item off the Debug menu that shows checksum and timestamp information. That may be enough info for your purposes.
You can get the version from all loaded modules by typing "LM v" in the command window, in WinDBG. The list is long and you get lots, including the Product and File version strings. However, I think it fetches this information from locally-stored modules that it loads, making sure its got the right ones from checksum information it uses to match them to the symbol files.
将转储文件加载到 WinDbg 并键入以下命令:
lm v
将显示有关所有模块的信息。Load your dump file to WinDbg and type this command:
lm v
will show you information about all modules.