windbg中无法加载mscorwks.dll, Win32 error 0n2

抓到一个mini dump,执行!clrstack,会提示如下错误:

*** WARNING: Unable to verify timestamp for mscorwks.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那个机器上的mscorwks拷过来,如在:c:\dumps\rules\debug目录下,那么执行:
0:037> .exepath+ c:\dumps\rules\debug
Executable image search path is: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;c:\dumps\rules\debug


然后重新加载符号表即可:.reload
posted @ 2008-03-13 12:28 鞠强 阅读(...) 评论(...) 编辑 收藏

hello

world