有點懶散的潛水日誌,希望在這分享海洋的驚奇

windbg Failed to load data access DLL, 0x80004005

今天在用windbg的時候遇到一個問題

load完dll檔之後要下指令給他跑時出現這樣的錯誤訊息

仔細看一下發現原因出在load進來的dll版本

我的版本是4927而Server的版本是3615

這時直接把Server上的檔案copy回來在安全模式下覆蓋就可以了

 

PS:記得要先備份原始檔否則以後有要在本機上跑時會有問題

 

CLRDLL: C:WINDOWSMicrosoft.NETFrameworkv2.0.50727mscordacwks.dll:2.0.50727.4927 f:0
doesn’t match desired version 2.0.50727.3615 f:0
SYMSRV:  D:sos.dllmscordacwks_x86_x86_2.0.50727.3615.dll4BE902C7590000mscordacwks_x86_x86_2.0.50727.3615.dll not found
SYMSRV:  http://msdl.microsoft.com/download/symbols/mscordacwks_x86_x86_2.0.50727.3615.dll/4BE902C7590000/mscordacwks_x86_x86_2.0.50727.3615.dll not found
SYMSRV:  C:Program FilesDebugging Tools for Windows (x86)symmscordacwks_x86_x86_2.0.50727.3615.dll4BE902C7590000mscordacwks_x86_x86_2.0.50727.3615.dll not found
SYMSRV:  http://msdl.microsoft.com/download/symbols/mscordacwks_x86_x86_2.0.50727.3615.dll/4BE902C7590000/mscordacwks_x86_x86_2.0.50727.3615.dll not found
CLRDLL: Unable to find mscordacwks_x86_x86_2.0.50727.3615.dll by mscorwks search
CLRDLL: Unable to find ‘mscordacwks_x86_x86_2.0.50727.3615.dll’ on the path
SYMSRV:  Can’t create D:sos.dllmscorwks.dll4BE902C7590000mscorwks.dll
         系統找不到指定的檔案。
DBGHELP: C:Program FilesDebugging Tools for Windows (x86)symmscorwks.dll4BE902C7590000mscorwks.dll – OK
CLRDLL: Unable to get version info for ‘C:Program FilesDebugging Tools for Windows (x86)symmscorwks.dll4BE902C7590000mscordacwks_x86_x86_2.0.50727.3615.dll’, Win32 error 0n87
CLRDLL: ERROR: Unable to load DLL mscordacwks_x86_x86_2.0.50727.3615.dll, Win32 error 0n87
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.

No Comments Yet

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *