SOS从内存转储中提取模块(EXE、DLL和其他二进制文件)
假设有一种情况,您从客户那里得到一个内存转储,需要模块(DLL、EXE、OCX等)来进一步调试。。(.NET模块可用于通过反向工程查看源代码。)
我们可以使用windbg目录中的clr10\sos.dll保存所有模块(在获取内存转储时由目标进程加载)。有趣的是,sos.dll不仅可以提取托管模块,还可以保存所有本机/非托管模块!
先加载sos模块
然后用!sam <path> OR !SaveAllModule <path> 提取特定磁盘位置上的模块。