Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

windbg - 덤프 파일로부터 닷넷 버전 확인하는 방법

검색해 보면 lm vm 명령어를 이용해 "File version"으로부터 확인할 수 있다고 나옵니다.

0:000> lm vm clr
Browse full module list
start             end                 module name
00007ffa`1fa00000 00007ffa`203e3000   clr        (pdb symbols)          e:\symbols\clr.pdb\C254072B1820467997506C2BCE7057162\clr.pdb
    Loaded symbol image file: clr.dll
    Image path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
    Image name: clr.dll
    Browse all global symbols  functions  data
    Timestamp:        Fri Apr 21 12:52:57 2017 (58F98219)
    CheckSum:         009E9CA9
    ImageSize:        009E3000
    File version:     4.6.1649.1
    Product version:  4.0.30319.1
    File flags:       8 (Mask 3F) Private
    File OS:          4 Unknown Win32
    File type:        2.0 Dll
    File date:        00000000.00000000
    Translations:     0409.04b0
    CompanyName:      Microsoft Corporation
    ProductName:      Microsoft® .NET Framework
    InternalName:     clr.dll
    OriginalFilename: clr.dll
    ProductVersion:   4.6.1649.1
    FileVersion:      4.6.1649.1 built by: NETFXREL3STAGE
    PrivateBuild:     DDBLD299E
    FileDescription:  Microsoft .NET Runtime Common Language Runtime - WorkStation
    LegalCopyright:   ⓒ Microsoft Corporation.  All rights reserved.
    Comments:         Flavor=Retail

그런데, 제가 가지고 있는 Windows 2008 테스트 서버의 clr.dll 버전을 확인해 보면 닷넷 4.5가 설치되었는데도 File version이 4.0.30319.18444로 나오는 걸로 봐서 4.0.xxxxx.xxxxx인 경우에는 반드시 메모리 덤프를 뜬 PC의 환경을 한번 더 검사해 볼 것을 권장합니다.

참고로 어차피 물어보는 경우라면 그냥 다음의 정보에 따라,

How to: Determine Which .NET Framework Versions Are Installed
; https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed

.NET Framework Versions and Dependencies
; https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependencies

레지스트리 값을 묻는 것이 가장 정확합니다.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP

참고로 sos.dll을 windbg에서 로드했다면 !EEVersion으로 출력되는 정보를 통해서도 단서를 찾을 수 있습니다.

0:000> !eeversion
4.6.1649.1 free
Server mode with 32 gc heaps
SOS Version: 4.6.1649.1 retail build




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 9/29/2017]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 151  152  153  154  [155]  156  157  158  159  160  161  162  163  164  165  ...
NoWriterDateCnt.TitleFile(s)
1269정성태3/27/201241291오류 유형: 149. ODP.NET 오류 - The provider is not compatible with the version of Oracle client
1268정성태3/27/201237284오류 유형: 148. WCF svc 호출 시 HTTP Error 404.17 - Not Found [1]
1267정성태3/16/201235967.NET Framework: 314. C++의 inline asm 사용을 .NET으로 포팅하는 방법 [1]파일 다운로드1
1266정성태3/14/201238589개발 환경 구성: 149. RAID 1 구성 시 하드 디스크 장애 발생 해결에 대한 경험담
1265정성태3/13/201228870VC++: 61. 아이태니엄(IA64: Itanium) 에서 겪은 C++ 포인터 연산 문제 [2]
1264정성태3/10/201248753.NET Framework: 313. WELL512 난수 발생 알고리즘 - C# [5]파일 다운로드1
1263정성태3/9/201227007개발 환경 구성: 148. tinyget 사용법
1262정성태3/8/201247717개발 환경 구성: 147. .keystore 파일에 저장된 개인키 추출 방법과 인증기관으로부터 온 공개키를 합친 pfx 파일 만드는 방법 [1]
1261정성태3/7/201228001Phone: 2. 개발자용 윈도우 폰 7 기기 등록하는 방법
1260정성태3/6/201228668Phone: 1. 윈도폰 7 개발자 (회사) 등록하는 방법 [3]
1259정성태3/4/201240108Windows: 57. 새로 추가된 네트워크 커널 디버깅 및 PowerShell 3.0 [1]
1258정성태3/3/201241583개발 환경 구성: 146. SQL Server 2012에 포함된 LocalDB 기능 소개 [3]파일 다운로드1
1257정성태3/3/201230171.NET Framework: 312. Native 스레드와 Managed 스레드 개체의 상태 관계 [1]파일 다운로드1
1256정성태3/3/201233274Math: 5. Euler's totient function - C#파일 다운로드1
1255정성태3/3/201235482Math: 4. 소수 판정 및 소인수 분해 소스 코드 - C# [1]파일 다운로드1
1254정성태3/1/201231023Windows: 56. Windows 8 Consumer Preview를 사용해 보고... [1]
1253정성태3/1/201232260VS.NET IDE: 71. Visual Studio 11 Ultimate 베타 설치 [3]
1252정성태3/1/201229587Windows: 55. 윈도우 8 베타 설치 과정 [1]
1251정성태2/27/201233849VC++: 60. C/C++ Native 스레드 콜 스택 덤프를 얻는 공개 라이브러리 [2]파일 다운로드1
1250정성태2/27/201235819VC++: 59. C/C++ 프로젝트 빌드 속도 개선 - UnityBuild를 아세요? [3]
1249정성태2/26/201236099.NET Framework: 311. .NET 스레드 콜 스택 덤프 (5) - ICorDebug 인터페이스 사용법 [2]파일 다운로드3
1248정성태2/25/201246802.NET Framework: 310. C#의 Shift 비트 연산 정리파일 다운로드1
1247정성태2/25/201229519.NET Framework: 309. .NET 응용 프로그램에 기본 생성되는 스레드들에 대한 탐구 [1]파일 다운로드1
1246정성태2/25/201228935개발 환경 구성: 145. 한영 변환은 되지만, 정작 한글 입력이 안되는 경우
1245정성태2/25/201240310개발 환경 구성: 144. 윈도우에서도 유닉스처럼 명령행으로 원격 접속하는 방법
1244정성태2/24/201237287.NET Framework: 308. .NET System.Threading.Thread 개체에서 Native Thread Id를 구할 수 있을까? [1]파일 다운로드1
... 151  152  153  154  [155]  156  157  158  159  160  161  162  163  164  165  ...