.NET Framework 버전과 서비스 팩이 설치된 것을 어떻게 발견합니까?


Answers

이 질문에 대한 공식 Microsoft 답변은 다음 기술 자료를 참조하십시오.

피드백 보내기 기술 자료 : 318785 - 마지막 검토 : 2008 년 11 월 7 일 화요일 - 수정 : 20.1 설치된 .NET Framework 버전과 서비스 팩 적용 여부를 확인하는 방법

불행하게도, 2.0 디렉토리의 mscorlib.dll 버전은 2.0 버전을 가지고 있고 3.5 SP1이 설치되어 있더라도 mscorlib.dll 버전이 3.0 또는 3.5 디렉토리에 없기 때문에 불행하게도 작동하지 않습니다 ... 이유 공식적인 Microsoft의 대답은 그렇게 잘못 알고 있습니까?

Question

비슷한 질문이 여기 에서 제기되었지만 .NET 3.5에만 해당됩니다. 특히, 나는 다음을 찾고있다 :

  1. 어떤 .NET Framework 버전과 서비스 팩이 설치되었는지 확인하는 올바른 방법은 무엇입니까?
  2. 사용할 수있는 레지스트리 키 목록이 있습니까?
  3. Framework 버전간에 종속성이 있습니까?



SignumFramework (독립 실행 형을 사용할 수 있음)Signum.Utilities 라이브러리를 사용하면 레지스트리를 직접 처리하지 않고도 멋지게 얻을 수 있습니다.

AboutTools.FrameworkVersions().ToConsole();
//Writes in my machine:
//v2.0.50727 SP2
//v3.0 SP2
//v3.5 SP1



Windows 7 (Windows 8에서도 작동해야하지만 테스트하지는 않았습니다) :

명령 프롬프트로 이동

명령 프롬프트로 이동하는 단계 :

  1. 시작 메뉴를 클릭하십시오.
  2. 검색 창에 "cmd"(따옴표 제외)를 입력하십시오.
  3. cmd.exe 열기

cmd에서이 명령을 입력하십시오.

wmic /namespace:\\root\cimv2 path win32_product where "name like '%%.NET%%'" get version

NET Framework의 최신 버전이 설치됩니다.

Raymond.cc Utilties 도 시도해 볼 수 있습니다.




FWIW ... 여기 실제 세계에서 널리 테스트 된 것으로 보이는 또 다른 해결책 이 있습니다 (그러나 C 언어로되어 있습니다)




HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP 의 하위 키를 열거하십시오. 각 하위 키는 .NET 버전입니다. Install=1 값 (시스템에있는 경우), 서비스 팩을 나타내는 SP 값 및 MSI=1 사용하여 설치 한 경우 MSI=1 값이 있어야합니다. (Windows Vista의 .NET 2.0에는 예를 들어 OS의 일부이기 때문에 마지막 버전이 없습니다.)







.NET 4.5.1 업데이트

이제 .NET 4.5.1을 사용할 수있게되었으므로 레지스트리에있는 Release라는 키의 실제 값이 존재하는지 확인할 필요가 있습니다. 378758 값은 .NET Framework 4.5.1이 설치되어 있음을 의미합니다. 그러나 여기에 설명 된대로이 값은 Windows 8.1에서는 378675입니다.







내 컴퓨터에서 .NET Framework의 버전을 확인해야했는데 제어판에 가서 "프로그램 제거"옵션을 선택해야했습니다. 그 후 필자는 이름으로 프로그램을 정렬하고 Microsoft .NET Framework 4 Client Profile을 발견했습니다.




Related