본문 바로가기

.NET/Debugging

windbg 의 mscordacwks DLL 로드 문제 [출처] windbg 의 mscordacwks DLL 로드 문제|작성자 techshare

http://blog.naver.com/techshare/100144174167

에서 퍼온 글입니다.

 


예전에 mscordacwks.dll 의 로드 문제에 대해서 한번 이야기를 한 적이 있었는데요.

Windbg - ERROR: Unable to load DLL mscordacwks_x86_x86_2.0.50727.4200.dll, Win32 error 0n2
; http://www.sysnet.pe.kr/2/0/994

최근에, 다시 한번 그 문제를 보게 되었습니다. 특이한 점은, dmp 파일을 받은 바로 그 컴퓨터에서 "Debug Diagnostics Tool" 을 실행했는데도 발생했다는 점입니다.

반면, 공통점이 있다면 이번에도 예전의 그 컴퓨터와 동일하게 "Windows Server 2008 SP2" 였다는 것.

참고로, Debug Diag 도구로 돌렸을 때 다음과 같이 설명이 나왔습니다.

========================== Description 

.NET runtime was loaded in the process but managed analysis was not done on this dump file because the managed debugger extension commands failed to execute with the below error 

CLRDLL: CLR DLL load disabled

CLR Debugger Extension Load Attempt

CLRDLL: Unable to find mscordacwks_x86_x86_2.0.50727.5681.dll by mscorwks search

CLRDLL: Unable to find 'mscordacwks_x86_x86_2.0.50727.5681.dll' on the path

CLRDLL: Unable to get version info for '\\localhost\d$\symbols\mscorwks.dll\4E150B975ab000\mscordacwks_x86_x86_2.0.50727.5681.dll', Win32 error 0n87

CLRDLL: ERROR: Unable to load DLL mscordacwks_x86_x86_2.0.50727.5681.dll, Win32 error 0n87

CLR DLL status: ERROR: Unable to load DLL mscordacwks_x86_x86_2.0.50727.5681.dll, Win32 error 0n87

문제 해결 방법은 이전 글에서 봤던 것과 동일합니다. 단지, 이번에는 같은 컴퓨터에서 발생했기 때문에, 그대로 "C:\Windows\Microsoft.NET\Framework\v2.0.50727\mscordacwks.dll" 파일을 복사해서 "D:\symbols\mscorwks.dll\4E150B975ab000" 폴더에 "mscordacwks_x86_x86_2.0.50727.5681.dll" 파일명으로 바꿔서 넣어주면 됩니다. (물론, .NET 버전 및 x86/x64 에 따라 상황에 맞게 복사해 주어야 합니다.)

해결은 했지만... 어쨌든 이 문제는 "Windows Server 2008 SP2" 상황에서만 발생하는 현상인 것 같습니다. (더 이상은, 판단할 만한 깜냥이 안되는 군요. ^^)