윈도우에서 .NET Framework 버전을 확인하는 방법
닷넷 프레임워크(.NET Framework)는 마이크로소프트의 윈도우 프로그램 개발 및 실행 환경입니다. 1.0부터 4.8 이상 다양한 버전이 있으며, 애플리케이션에 따라 특정한 버전을 필요로 하며, 여러 버전을 시스템에 설치할 수 있습니다. 여러 버전을 사용하다보니 현재 시스템에 설치된 정확한 버전을 확인하려면 번거로울 수 있습니다. 이 글에서는 현재 시스템에 설치된 .NET Framework 정보를 확인하는 방법을 소개합니다.
레지스트리에서 4.x 버전 확인하는 방법#
.NET Framework 4.0 이상 버전의 경우, Windows Terminal에서 PowerShell을 창을 열고 다음 내용을 실행하면 현재 설치된 정확한 버전 정보를 확인할 수 있습니다.
$ (get-item 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full').GetValue("Release")
528372
예시의 528372 버전은 .NET Framework 4.8 버전이며, ’Windows 10 2020년 5월 업데이트 및 Windows 10 2020년 10월 업데이트’의 릴리스 넘버입니다. 릴리스 넘버에 대한 대응하는 버전은 다음 목록에서 확인해주세요.
- .NET Framework 4.5, > 378389
- 모든 Windows 운영 체제: 378389
- .NET Framework 4.5.1, > 378675
- Windows 8.1 및 Windows Server 2012 R2: 378675
- 다른 모든 Windows 운영 체제: 378758
- .NET Framework 4.5.2, > 379893
- 모든 Windows 운영 체제: 379893
- .NET Framework 4.6, > 393295
- Windows 10: 393295
- 다른 모든 Windows 운영 체제: 393297
- .NET Framework 4.6.1, > 394254
- Windows 10 11월 업데이트 운영 체제: 394254
- 다른 모든 Windows 운영 체제(Windows 10 포함): 394271
- .NET Framework 4.6.2, > 394802
- Windows 10 1주년 업데이트 및 Windows Server 2016: 394802
- 다른 모든 Windows 운영 체제(다른 Windows 10 운영 체제 포함): 394806
- .NET Framework 4.7, > 460798
- Windows 10 Creators Update: 460798
- 다른 모든 Windows 운영 체제(다른 Windows 10 운영 체제 포함): 460805
- .NET Framework 4.7.1, > 461308
- Windows 10 Fall Creators Update 및 Windows Server, 버전 1709: 461308
- 다른 모든 Windows 운영 체제(다른 Windows 10 운영 체제 포함): 461310
- .NET Framework 4.7.2, > 461808
- Windows 10 2018년 4월 업데이트 및 Windows Server, 버전 1803: 461808
- Windows 10 2018년 4월 업데이트 및 Windows Server, 버전 1803 이외의 모든 Windows 운영 체제: 461814
- .NET Framework 4.8, > 528040
- Windows 10 2019년 5월 업데이트 및 Windows 10 2019년 11월 업데이트: 528040
- Windows 10 2020년 5월 업데이트 및 Windows 10 2020년 10월 업데이트: 528372
- 다른 모든 Windows 운영 체제(다른 Windows 10 운영 체제 포함): 528049
1.0 이상 버전 설치 여부 확인하는 방법#
1.0, 1.1, 2.0, 3.0, 3.5, 4.0 버전에 대해서, 각각 아래의 레지스트리 값으로 설치 여부를 확인할 수 있습니다.
-
1.0
HKLM:\Software\Microsoft\.NETFramework\Policy\v1.0\3705
- Install 값이 1
-
1.1
HKLM:\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322
- Install 값이 1
-
2.0
HKLM:\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727
- Install 값이 1
-
3.0
HKLM:\Software\Microsoft\NET Framework Setup\NDP\v3.0\Setup
- InstallSuccess 값이 1
-
3.5
HKLM:\Software\Microsoft\NET Framework Setup\NDP\v3.5
- Install 값이 1
-
4.0 클라이언트 프로필
HKLM:\Software\Microsoft\NET Framework Setup\NDP\v4\Client
- Install` 값이 1
-
4.0 전체 프로필
HKLM:\Software\Microsoft\NET Framework Setup\NDP\v4\Full
- Install 값이 1
예를 들어 4.0 전체 프로필로 설치 여부를 확인하고 싶다면 아래와 같이 PowerShell에서 get-item
으로 레지스트를 조회해봅니다.
$ get-item 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full'
Hive: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4
Name Property
---- --------
Full CBS : 1
Install : 1
InstallPath : C:\Windows\Microsoft.NET\Framework64\v4.0.30319\
Release : 528372
Servicing : 0
TargetVersion : 4.0.0
Version : 4.8.04084
Install 값이 1인 것으로 4.x 버전이 설치된 것을 확인할 수 있으며, Version 값으로 버전 정보도 확인할 수 있습니다.
DotNetVersionLister로 버전 정보 확인하는 방법#
여러 버전의 .NET Framework 설치 여부를 한꺼번에 확인하고 싶을 때는 DotNetVersionLister를 사용하면 편리합니다.
Install-Module
명령어로 설치할 수 있습니다. 설치 과정에서 신뢰할 수 없는 리포지토리로 나오는 점에 유의해주세요. 보안 문제가 걱정된다면 직접 저장소에서 파워셸 스크립트를 다운로드 받아 실행하는 것도 방법입니다. 여기서는 Install-Module
을 사용해 설치를 진행하겠습니다. 설치하려면 Y를 입력해주세요.
$ Install-Module -Name DotNetVersionLister -Scope CurrentUser
신뢰할 수 없는 리포지토리
신뢰할 수 없는 리포지토리에서 모듈을 설치하는 중입니다. 이 리포지토리를 신뢰하는 경우
Set-PSRepository cmdlet을 실행하여 InstallationPolicy 값을 변경하십시오. 'PSGallery'에서 모듈을
설치하시겠습니까?
[Y] 예(Y) [A] 모두 예(A) [N] 아니요(N) [L] 모두 아니요(L) [S] 일시 중단(S) [?] 도움말
(기본값은 "N"):Y
설치가 완료되면 Get-STDotNetVersion
명령어를 사용할 수 있습니다. 이 명령어를 인자 없이 실행하면 버전 별 .NET Framework 설치 여부가 출력됩니다.
PS C:\Users\lainy> Get-STDotNetVersion
ComputerName : localhost
>=4.x : 4.8 or later
v4\Client : Installed
v4\Full : Installed
v3.5 : Installed
v3.0 : Installed
v2.0.50727 : Installed
v1.1.4322 : Not installed (no key)
Ping : True
Error :
Script start time: 08/08/2021 20:36:08
Script end time: 08/08/2021 20:36:09