您的位置:首页 > 其它

windbg调试minidump加载mscordacwks.dll 0×80004005失败

2011-10-05 20:51 471 查看
在用windbg调试dump的时候,运行SOS扩展命令可能会出现
mscordacwks.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 mscorwks.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 mscorwks.dll as well.


出现这种情况一般是抓dump的机器和调试的机器
mscordacwks.dll 文件版本不一致造成的,解决办法是在抓dump的机器上copy一份
mscordacwks.dll,或者找份同样版本的文件。


至于缺的是哪个版本的文件 可以在windbg里用
元命令
.cordll 看下,类似下面的:


0:000> .cordll
CLR DLL status: ERROR: Unable to load DLL mscordacwks_x86_x86_2.0.50727.3603.dll, Win32 error 0n2


这里的命名规则就是 mscordacwks_<arch>_<arch>_<version>.dll 这样的

找到对应版本的
mscordacwks.dll
文件,改名至上面的文件名,放到windbg的目录下重新加载下(.cordll -ve -u -l)就可以了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐