Microsoft .NET Framework 버전 3.0 배포

 

애니 왕
Microsoft Corporation

2006년 6월

적용 대상
   Microsoft .NET Framework 버전 3.0(이전의 WinFX)
   Microsoft .NET Framework 2.0
   Microsoft Windows Vista

요약: Microsoft .NET Framework 3.0(이전의 WinFX)은 Windows용 새로운 관리 코드 프로그래밍 모델입니다. .NET Framework 3.0용으로 작성된 애플리케이션은 애플리케이션이 실행되는 컴퓨터에 .NET Framework 3.0을 설치해야 합니다. 이 문서에서는 .NET Framework 3.0 및 이전 버전의 .NET Framework 관계를 간략하게 설명하고, 프레임워크 설치 및 배포에 대한 정보를 제공하며, .NET Framework 3.0이 설치되어 있는지 여부를 검색하는 방법을 설명합니다. (18페이지 인쇄)

콘텐츠

소개
   Microsoft .NET Framework 3.0 정보
   .NET Framework 3.0이 .NET Framework 2.0 이하와 관련된 방법
   .NET Framework 3.0에 대한 서비스 정책
   향후 .NET Framework 릴리스에 대한 로드맵
.NET Framework 3.0 설치
   .NET Framework 어셈블리의 버전 번호
.NET Framework 3.0 배포
   소프트웨어 요구 사항
   하드웨어 요구 사항
   .NET Framework 대한 재배포 권한
   .NET Framework 3.0을 배포하기 위한 IT 관리자 도구
   애플리케이션을 사용하여 .NET Framework 재배포
.NET Framework 3.0 및 이전 릴리스 검색
   레지스트리 키 읽기
   인터넷 Explorer User-Agent 문자열 읽기
.NET Framework 3.0 재배포 가능 명령줄 옵션
.NET Framework 3.0 재배포 가능 패키지에 대한 오류 코드
부록 A: .NET Framework 언어 팩 검색
부록 B: 인터넷 Explorer 사용하여 .NET Framework 3.0을 검색하기 위한 샘플 스크립트

소개

이 섹션에서는 .NET Framework 3.0에 대한 개요를 제공합니다.

Microsoft .NET Framework 3.0 정보

Microsoft .NET Framework 버전 3.0(이전의 WinFX)은 Windows용 새로운 관리 코드 프로그래밍 모델입니다. .NET Framework 2.0의 강력한 기능과 시각적으로 매력적인 사용자 환경, 기술 경계를 넘나드는 원활한 통신 및 광범위한 비즈니스 프로세스 지원을 갖춘 애플리케이션을 빌드하기 위한 새로운 기술과 결합합니다. Microsoft는 Windows Vista의 일부로 .NET Framework 3.0을 제공할 계획입니다. 동시에 Microsoft는 Windows XP 서비스 팩 2 및 Windows Server 2003 서비스 팩 1에 .NET Framework 사용할 수 있도록 합니다.

다음 표에는 .NET Framework 3.0에 포함된 몇 가지 기술이 나와 있습니다.

기술 설명
Windows Presentation Foundation(WPF, 이전의 코드 이름 "Avalon") UI, 문서 및 미디어를 결합하는 차세대 스마트 클라이언트 애플리케이션을 빌드하기 위한 클래스를 제공합니다.
Windows Communication Foundation(WCF, 이전의 코드 이름 "Indigo") 서비스 지향 애플리케이션을 빌드하기 위한 통합 프로그래밍 모델 및 런타임을 제공합니다.
Windows WF(Workflow Foundation) 비즈니스 프로세스를 모델링하는 워크플로 지원 애플리케이션을 빌드하는 프로그래밍 모델, 엔진 및 도구를 제공합니다.
Windows CardSpace(이전 코드명 "InfoCard") 개인 ID 정보를 사용하여 온라인으로 작업하는 안전성을 간소화하고 개선하기 위한 기술을 제공합니다.
Microsoft .NET Framework 2.0 Windows 및 웹 기반 애플리케이션을 생산적으로 빌드할 수 있습니다.

새 구성 요소(WPF, WF, WCF 및 CardSpace)를 나타내는 모든 클래스는 시스템 네임스페이스의 일부입니다. CLR(공용 언어 런타임) 및 BCL(기본 클래스 라이브러리)과 같은 .NET 플랫폼의 핵심 클래스는 .NET Framework 2.0에 그대로 유지됩니다.

다음 다이어그램에서는 .NET Framework 3.0의 구조를 보여 줍니다.

Aa480198.netfx30(en-us,MSDN.10).gif

그림 1. .NET Framework 3.0

.NET Framework 3.0이 .NET Framework 2.0 이하와 관련된 방법

.NET Framework 3.0은 .NET Framework 2.0에 새로운 기술을 추가하여 .NET Framework 3.0을 .NET Framework 2.0의 상위 집합으로 만듭니다. .NET Framework 3.0은 .NET Framework 2.0에 대한 "추가" 릴리스로 생각할 수 있으며, 이는 소프트웨어가 전반적으로 수정되는 세대별 릴리스와 대조됩니다. 예를 들어 .NET Framework 2.0은 .NET Framework 1.0을 통해 세대별 릴리스였습니다.

.NET Framework 3.0은 추가 릴리스이며 .NET Framework 2.0의 핵심 런타임 구성 요소를 사용하므로 이전 버전과 완전히 이전 버전과 호환됩니다. 기존 .NET Framework 2.0 기반 애플리케이션은 수정 없이 계속 실행되며 .NET Framework 2.0과 함께 제공되는 기술을 사용하여 투자를 안전하게 계속할 수 있습니다.

.NET Framework 1.1 또는 1.0에서 .NET Framework 3.0으로 이동하는 경우 영향 분석을 수행하고 배포 전에 호환성 테스트를 실행해야 합니다. .NET Framework 릴리스를 호환하기 위해 노력해 왔지만 보안 및 중요한 기능 추가로 인해 알려진 호환되지 않는 몇 가지가 있습니다. 자세한 내용은 Microsoft .NET 개발자 센터 웹 사이트에서 .NET Framework 2.0의 호환성이 손상되는 변경 페이지를 참조하세요.

.NET Framework 3.0에 대한 서비스 정책

Microsoft는 지원되는 플랫폼에 대한 표준 지원 정책에 따라 .NET Framework 2.0 릴리스를 계속 서비스할 것입니다. 현재 .NET Framework 2.0을 사용하는 사용자는 해당 버전의 .NET Framework 그대로 유지하고 사용 가능한 소프트웨어 업데이트를 받을 수 있습니다.

.NET Framework 3.0의 일부로 제공되는 모든 구성 요소는 지원되는 플랫폼에서 서비스됩니다. 자세한 내용은 Microsoft Visual Studio 개발자 센터 웹 사이트의 소프트웨어 업데이트 기술 페이지를 참조하세요.

향후 .NET Framework 릴리스에 대한 로드맵

일반적으로 새 버전의 .NET Framework 이전 버전과의 호환성을 제공하도록 설계되었습니다. 새 릴리스에서 보안 문제 또는 기타 이유로 인해 호환성이 손상되는 변경이 발생하는 경우 Microsoft에서는 새 릴리스를 기존 버전과 함께 설치할 수 있습니다.

.NET Framework 향후 릴리스에 대한 자세한 내용은 Microsoft .NET Framework 개발자 센터 웹 사이트를 참조하세요.

.NET Framework 3.0 설치

.NET Framework 3.0은 기본적으로 Microsoft Windows Vista에 설치됩니다. Microsoft Windows Server 코드 이름 "Longhorn"에서 역할 관리 도구를 사용하여 .NET Framework Windows 기능으로 설치할 수 있습니다.

Windows XP 및 Windows Server 2003에서 .NET Framework 3.0을 설치하면 아직 설치되지 않은 .NET Framework 2.0 구성 요소도 추가됩니다. .NET Framework 2.0이 이미 설치된 경우 .NET Framework 3.0 설치 관리자는 WPF(Windows Presentation Foundation), WF(Windows Workflow Foundation), WCF(Windows Communication Foundation) 및 Windows CardSpace용 파일만 추가합니다.

.NET Framework 2.0과 공유되는 구성 요소는 다음 위치에 설치됩니다.

%windir%\Microsoft.NET\Framework\V2.0.50727

.NET Framework 3.0의 새로운 구성 요소는 다음 위치에 설치됩니다.

%windir%\Microsoft.NET\Framework\V3.0 

.NET Framework 3.0 참조 어셈블리의 모든 구성 요소는 다음 위치에 설치됩니다.

%programfiles%\Reference Assemblies\Microsoft\Framework\v3.0

.NET Framework 3.0을 제거해도 .NET Framework 2.0과 공유되는 구성 요소는 제거되지 않습니다. 이러한 구성 요소를 제거하려면 먼저 .NET Framework 3.0을 제거한 다음 .NET Framework 2.0을 별도로 제거해야 합니다. (Windows 제어판 프로그램 추가 또는 제거 항목을 사용하여 .NET Framework 제거할 수 있습니다.)

.NET Framework 어셈블리의 버전 번호

.NET Framework 3.0은 .NET Framework 2.0과 많은 구성 요소를 공유하며 CLR(공용 언어 런타임) 및 기본 클래스 라이브러리는 .NET Framework 2.0의 라이브러리와 동일합니다. 따라서 이러한 공유 구성 요소는 버전 2.0에 유지됩니다. 버전 번호 3.0은 WCF(Windows Communication Foundation), WPF(Windows Presentation Foundation), WF(Windows Workflow Foundation) 및 Windows CardSpace에 대한 모든 런타임 및 참조 어셈블리에 적용됩니다.

.NET Framework 3.0 배포

이 섹션에서는 애플리케이션에 사용할 .NET Framework 3.0을 배포하는 방법에 대한 정보를 제공합니다.

소프트웨어 요구 사항

.NET Framework 3.0을 설치하려면 대상 컴퓨터에 다음 운영 체제 중 하나가 설치되어 있어야 합니다.

  • Microsoft Windows XP Home 또는 Microsoft Windows XP Home Professional( 서비스 팩 2 이상)
  • 서비스 팩 1 이상이 포함된 Microsoft Windows Server 2003 제품군.

.NET Framework 2.0은 대상 플랫폼에서 계속 지원됩니다. 자세한 내용은 MSDN 웹 사이트의 .NET Framework 2.0 재배포 가능 필수 구성 요소 페이지를 참조하세요.

.NET Framework 3.0은 기본적으로 Microsoft Windows Vista와 함께 설치됩니다. Microsoft Windows Server "Longhorn"에서 .NET Framework 3.0은 역할 관리 도구를 사용하여 설치할 수 있는 Windows 기능입니다.

참고 Microsoft Windows Server "Longhorn" IA64 Edition은 .NET Framework 3.0에서 지원하는 유일한 IA64 플랫폼입니다.

하드웨어 요구 사항

다음 표에서는 .NET Framework 3.0을 실행하기 위한 하드웨어 요구 사항을 나열합니다.

  CPU 필요 RAM 필요
최소 펜티엄 400MHz 96MB
권장 펜티엄 1GHz 이상 256MB 이상

.NET Framework 대한 재배포 권한

Microsoft는 조직 내에서 그리고 소프트웨어 솔루션의 일부로 .NET Framework 배포하는 고객을 강력하게 지원합니다. .NET Framework 3.0 런타임을 배포하려면 사용 조건에 동의해야 합니다. 애플리케이션 또는 타사에 .NET Framework 3.0을 재배포하는 방법에 대한 자세한 내용은 MSDN 웹 사이트의 .NET Framework 및 기타 런타임 구성 요소 재배포를 위한 ISV 가이드 페이지를 참조하세요.

참고 재배포 가능 권한은 Microsoft .NET Framework 3.0의 공식 릴리스 버전에 대해서만 예약됩니다. 사전 릴리스된 버전의 Microsoft .NET Framework 3.0을 애플리케이션에 재배포할 수 없습니다.

.NET Framework 3.0을 배포하기 위한 IT 관리자 도구

.NET Framework 3.0은 IT 관리자가 필드 클라이언트에 배포하는 두 가지 방법인 관리자 모드 설정 및 Active Directory 배포를 제공합니다.

관리자 모드 설정

관리자 모드 설정을 사용하면 IT 관리자가 MICROSOFT SMS(시스템 관리 서버) 또는 기타 소프트웨어 배포 도구를 통해 .NET Framework 배포할 수 있습니다. IT 관리자는 자동 모드에서 프레임워크 설정을 실행합니다. 오류가 발생하면 설치 프로그램이 자동으로 종료되고 오류 코드가 기록됩니다.

Active Directory 배포

Active Directory 배포에서 관리자는 .NET Framework 3.0 설치 패키지의 개별 .msi 파일을 .msi 파일을 배포해야 하는 순서대로 그룹 정책에 추가해야 합니다. 그룹 정책을 사용하도록 설정한 후 이 그룹 정책의 일부인 모든 클라이언트는 부팅하고 네트워크에 다시 연결할 때 구성 요소를 자동으로 설치합니다. 오류가 발생하면 설치 프로그램이 자동으로 종료되고 오류 코드가 기록됩니다.

관리 배포 지침에 대한 자세한 내용은 관리자 배포 가이드 웹 페이지를 참조하세요.

애플리케이션을 사용하여 .NET Framework 재배포

.NET Framework 3.0 재배포 가능 패키지는 독립 실행형 실행 파일로 사용할 수 있습니다. 파일의 이름은 대상 플랫폼의 형식에 따라 달라집니다. 32비트 플랫폼의 경우 파일 이름은 Dotnetfx3.exe. 64비트 플랫폼의 경우 파일 이름은 Dotnetfx3_x64.exe. 설치하는 동안 필요한 구성 요소를 다운로드하는 Dotnet3setup.exe 라는 작은 재배포 가능 패키지를 배포할 수도 있습니다.

.NET Framework 3.0 재배포 가능 패키지를 애플리케이션과 배포하는 경우 특정 배포 권한을 부여하는 사용 조건에 동의해야 합니다.

컴퓨터에 재배포 가능 파일을 수동으로 시작하고 설치하거나 .NET Framework 3.0 애플리케이션에 대한 설치 프로그램의 일부로 시작하고 설치할 수 있습니다.

참고 .NET Framework 3.0을 설치하려면 관리자 권한이 필요합니다.

자세한 내용은 Microsoft .NET Framework 3.0 배포 가이드 웹 페이지를 참조하세요.

.NET Framework 3.0 및 이전 릴리스 검색

레지스트리 키를 읽고 인터넷 Explorer 사용자 에이전트 문자열을 쿼리하여 .NET Framework 3.0이 설치되어 있는지 검색할 수 있습니다.

레지스트리 키 읽기

지정된 레지스트리 키 값을 찾아 컴퓨터에 .NET Framework 설치되어 있는지 여부를 검색할 수 있습니다. 다음 표에는 특정 버전의 .NET Framework 설치되어 있는지 여부를 확인하기 위해 테스트할 수 있는 레지스트리 키와 값이 나와 있습니다.

버전 레지스트리 키 이름
3.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup InstallSuccess(DWORD 값 = 1)
2.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727 설치(DWORD 값 = 1)
1.1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 설치(DWORD 값 = 1)
1.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\policy\v1.0 3705(REG_SZ 값 = 3321-3705)

참고 .NET Framework 1.0 및 1.1에 대해 이전에 릴리스된 서비스 팩을 검색하는 방법에 대한 자세한 내용은 Microsoft 기술 자료에서 "설치된 318785 .NET Framework 버전을 확인하는 방법 및 서비스 팩이 적용되었는지 여부를 확인하는 방법" 문서를 참조하세요.

인터넷 Explorer User-Agent 문자열 읽기

브라우저 기반 애플리케이션의 경우 해당 컴퓨터에서 실행되는 인터넷 Explorer 사용하여 사용자 에이전트 문자열을 검사하여 컴퓨터에 .NET Framework 3.0이 설치되어 있는지 여부를 검색할 수 있습니다. 여기에는 부분 문자열 "NET CLR"과 주 버전 및 부 버전 번호가 포함됩니다. 샘플 사용자 에이전트 문자열은 다음과 같습니다.

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; 
.NET CLR 2.0.50727; .NET CLR 3.0.04131.06)

부록 B: 인터넷 Explorer 사용하여 .NET Framework 3.0을 검색하기 위한 샘플 스크립트는 브라우저에서 실행되고 현재 .NET Framework 버전 번호에 대한 정보를 표시하는 샘플 JavaScript 프로그램을 나열합니다.

브라우저 헤더로 전송되는 사용자 에이전트 문자열은 다음 표와 같이 서버 컴퓨터의 레지스트리에 저장됩니다.

버전 레지스트리 키
3.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Post Platform\.NET CLR.3.0. 04131.06
참고 빌드 번호(
04131.06
예제에서)는 .NET Framework 3.0의 최종 릴리스에 대해 변경됩니다.
2.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Post Platform\.NET CLR 2.0.50727
1.1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent\Post Platform\.NET CLR 1.1.4322

.NET Framework 3.0 재배포 가능 패키지에 대한 명령줄 옵션

다음 표에서는 명령줄에서 .NET Framework 3.0 재배포 가능 설치 프로그램(Dotnetfx3.exe, Dotnetfx3_x64.exe 또는 Dotnet3setup.exe)을 실행할 때 포함할 수 있는 옵션을 나열합니다.

옵션 Description
/q
모든 UI를 표시하지 않습니다. 이 옵션을 사용하여 .INI 파일을 지정할 수 없습니다.
/quiet
/q와 동일합니다.
/qb
진행률만 표시하는 최소 UI를 표시합니다.
/passive
/qb와 동일합니다.
/uninstall
제품을 제거합니다.
/remove
/uninstall와 동일합니다.
/f
설치된 모든 .NET Framework 3.0 구성 요소를 복구합니다.
/nopatch
패치가 적용되지 않도록 지정하고 패치 검사를 무시합니다.
/norollback
설치 구성 요소가 실패할 경우 설치 프로그램이 롤백되지 않도록 지정합니다.
/norestart
설치가 완료된 후 설치 관리자가 컴퓨터를 다시 시작하지 않도록 지정합니다. 재배포 가능 설치 관리자는 다시 부팅이 필요한 경우 ERROR_SUCCESS_REBOOT_REQUIRED(3010)를 반환합니다.
/?
이 옵션 목록을 표시합니다.

.NET Framework 3.0 재배포 가능 패키지에 대한 오류 코드

다음 표에서는 .NET Framework 3.0 재배포 가능 설치 프로그램(Dotnetfx3.exe, Dotnetfx3_x64.exe 또는 Dotnet3setup.exe)에서 반환할 수 있는 오류 코드를 나열합니다. 오류 코드는 설치 관리자의 모든 버전에 대해 동일합니다.

오류 코드 Description
ERROR_SUCCESS
0 작업이 성공적으로 완료되었습니다.
ERROR_INSTALL_USEREXIT
1602 사용자가 설치를 취소했습니다.
ERROR_INSTALL_FAILURE
1603 설치하는 동안 심각한 오류가 발생했습니다.
ERROR_UNKNOWN_PRODUCT
1605 이 작업은 현재 설치된 제품에만 유효합니다.
ERROR_PATCH_PACKAGE_INVALID
1636 패치 패키지를 열 수 없거나 패치를 .NET Framework 3.0에 적용할 수 없습니다.
ERROR_INVALID_COMMAND_LINE
1639 명령줄 인수가 잘못되었습니다.
ERROR_SUCCESS_REBOOT_INITIATED
1641 설치 관리자가 다시 시작을 시작했습니다. 이는 성공을 나타내며 다시 시작한 후에도 설정이 계속됩니다. (옵션을 지정한 경우 다시 부팅이 /norestart 수행되지 않습니다.)
ERROR_PATCH_PACKAGE_REJECTED
1643 이 패치 패키지는 시스템 정책에 따라 허용되지 않습니다.
ERROR_SUCCESS_REBOOT_REQUIRED
3010 설치를 완료하려면 컴퓨터를 다시 시작해야 합니다. 이 메시지는 설치가 성공적으로 수행되었음을 의미합니다.

부록 A: .NET Framework 언어 팩 검색

다음 표에서는 컴퓨터에 .NET Framework 언어 팩이 설치되어 있는지 여부를 검색하기 위해 읽을 수 있는 레지스트리 값을 나열합니다. 지역화된 버전의 .NET Framework 1.0을 검색하는 방법에 대한 자세한 내용은 MSDN 웹 사이트의 재배포 가능 패키지 기술 참조 .NET Framework 페이지를 참조하세요.

제품 레지스트리 값
중국어(간체) 언어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\2052

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\2052

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\2052

InstallSuccess(DWORD 값 = 1)

중국어(번체) 언어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1028

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1028

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1028

InstallSuccess(DWORD 값 = 1)

체코어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1029

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1029

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1029

InstallSuccess(DWORD 값 = 1)

덴마크어 언어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1030

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1030

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1030

InstallSuccess(DWORD 값 = 1)

네덜란드어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1043

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1043

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1043

InstallSuccess(DWORD 값 = 1)

핀란드어 언어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1035

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1035

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1035

InstallSuccess(DWORD 값 = 1)

프랑스어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1036

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1036

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1036

InstallSuccess(DWORD 값 = 1)

독일어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1031

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1031

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1031

InstallSuccess(DWORD 값 = 1)

그리스어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1032

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1032

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1032

InstallSuccess(DWORD 값 = 1)

이탈리아어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1040

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1040

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1040

InstallSuccess(DWORD 값 = 1)

일본어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1041

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1041

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1041

InstallSuccess(DWORD 값 = 1)

한국어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1042

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1042

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1042

InstallSuccess(DWORD 값 = 1)

노르웨이어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1044

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1044

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1044

InstallSuccess(DWORD 값 = 1)

폴란드어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1045

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1045

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1045

InstallSuccess(DWORD 값 = 1)

포르투갈어(브라질) 언어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1046

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1046

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1046

InstallSuccess(DWORD 값 = 1)

포르투갈어(포르투갈) 언어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\2070

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\2070

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\2070

InstallSuccess(DWORD 값 = 1)

러시아어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1049

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1049

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1049

InstallSuccess(DWORD 값 = 1)

스페인어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\3082

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\3082

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\3082

InstallSuccess(DWORD 값 = 1)

스웨덴어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1053

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1053

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1053

InstallSuccess(DWORD 값 = 1)

터키어 팩 버전 1.1

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322\1055

버전 2.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727\1055

설치(DWORD 값 = 1)

버전 3.0

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup\1055

InstallSuccess(DWORD 값 = 1)

부록 B: 인터넷 Explorer 사용하여 .NET Framework 3.0을 검색하기 위한 샘플 스크립트

다음 예제에서는 브라우저에서 실행되는 JavaScript 프로그램이 .NET Framework 3.0이 실행 중인지 여부를 검색하는 것을 보여 줍니다. 스크립트는 사용자 에이전트 문자열을 검색하고 검색 결과에 따라 상태 메시지를 표시합니다.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Test for NET Framework 3.0</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <script type="text/javascript" language="JavaScript">
    <!--
    var RequiredFXVersion = "3.0.04131.06";
    
    function window::onload()
    {
      var foundVer = CheckRequiredFXVersion(RequiredFXVersion);
      if (foundVer != null)
      {
        result.innerHTML = "This computer has the correct version of the .NET Framework: " + foundVer + "." + "<br/>"
          + "This computer's userAgent string is: " + navigator.userAgent + ".";
      } 
      else
      {
        result.innerHTML = "This computer does not have the correct 
version of the .NET Framework.<br/>"
          + "<a href='https://msdn.microsoft.com/windowsvista/default.aspx'>Click here</a> "
          + "to get .NET Framework 3.0 now.<br>"
          + "This computer's userAgent string is: " + navigator.userAgent + ".";
      }
    }
    
    //
    // Retrieve available versions from the user agent string
    // and check if any of them match the required version.
    //
    function CheckRequiredFXVersion(requiredVersion)
    {
      var userAgentString = navigator.userAgent.match(/\.NET CLR[ .][0-9.]+/g);
      if (userAgentString != null)
      {
        var i;
        for (i = 0; i < userAgentString.length; ++i)
        {
          var ver = userAgentString[i].slice(9);
          if (CheckVersion(requiredVersion, ver))
            return ver;
        }
      }
      return null;
    }

    //
    // Check if a specific version satisfies the version requirement.
    //
    function CheckVersion(requiredVersion, ver)
    {
      requiredVersion = requiredVersion.split(".");
      ver = ver.split(".");
      
      // Major versions must match exactly.
      if (requiredVersion[0] != ver[0])
        return false;
      
      // Minor/build numbers must be at least the required version.
      var i;
      for (i = 1; i < requiredVersion.length && i < ver.length; i++)
      {
        if (new Number(ver[i]) < new Number(requiredVersion[i]))
          return false;
      }
      return true;
    }
    
    -->
    </script>
  </head>
  <body>
    <div id="result" />
  </body>
</html>

문자열 ".NET Framework 3.0" 버전 검색에 성공하면 다음 메시지가 나타납니다.

This computer has the correct version of the .NET Framework: 3.0.04131.06.

This computer's userAgent string is: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04131.06).

그렇지 않으면 다음 메시지가 나타납니다.

This computer does not have the correct version of the .NET Framework.

여기를 클릭하세요. to get .NET Framework 3.0 now.

This computer's userAgent string is: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; InfoPath.1; .NET CLR 2.0.50727).