调试 – windbg.exe:无法加载数据访问DLL,0x80004005

前端之家收集整理的这篇文章主要介绍了调试 – windbg.exe:无法加载数据访问DLL,0x80004005前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试从在x64计算机上运行的进程调试32位进程转储.我正在x64笔记本电脑上运行x86版本的windbg.我已按照建议 here,但我仍然得到这个:

0:000> .cordll -ve -u -l
CLR DLL status: No load attempts
0:000> !clrstack
CLRDLL: C:\Windows\Microsoft.NET\Framework\v4.0.30319\mscordacwks.dll:4.0.30319.17020 f:8
doesn't match desired version 4.0.30319.237 f:8
CLRDLL: Loaded DLL c:\symbols\public\mscordacwks_x86_x86_4.0.30319.237.dll\4DD234A8670000\mscordacwks_x86_x86_4.0.30319.237.dll
Failed to load data access DLL,0x80004005
Verify that 1) you have a recent build of the debugger (6.2.14 or newer)
            2) the file mscordacwks.dll that matches your version of clr.dll is 
                in the version directory
            3) or,if you are debugging a dump file,verify that the file 
                mscordacwks_<arch>_<arch>_<version>.dll is on your symbol path.
            4) you are debugging on the same architecture as the dump file.
                For example,an IA64 dump file must be debugged on an IA64
                machine.

You can also run the debugger command .cordll to control the debugger's
load of mscordacwks.dll.  .cordll -ve -u -l will do a verbose reload.
If that succeeds,the SOS command should work on retry.

If you are debugging a minidump,you need to make sure that your executable
path is pointing to clr.dll as well.

据我所知,mscordacwks_x86_x86_4.0.30319.237.dll已成功加载,但我仍然收到错误.我错过了什么?

解决方法

我通过使用 ProcDump来获得在64位计算机上运行的32位进程的32位转储来解决该问题.我可以使用32位windbg成功检查. this blog post还有更多细节.

猜你在找的Windows相关文章