title: windbg.exe: Failed to load data access DLL, 0x80004005
body: <p>I'm trying to debug a 32 bit process dump from a process that ran on an x64 machine. I'm running an x86 version of windbg on my x64 laptop. I've followed the recommendations <a href="http://blogs.msdn.com/b/dougste/archive/2009/02/18/failed-to-load-data-access-dll-0x80004005-or-what-is-mscordacwks-dll.aspx" rel="nofollow">here</a>, but I'm still getting this:</p>
  
  <pre><code>0:000&gt; .cordll -ve -u -l
  CLR DLL status: No load attempts
  0:000&gt; !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_&lt;arch&gt;_&lt;arch&gt;_&lt;version&gt;.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.
  </code></pre>
  
  <p>As far as I can determine, <code>mscordacwks_x86_x86_4.0.30319.237.dll</code> is successfully loaded, but I still get the error. What am I missing?</p>