次の方法で共有


Microsoft .NET Framework バージョン 3.0 の展開

 

Annie Wang
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 以前のリリースの検出
   レジストリ キーの読み取り
   インターネット エクスプローラーでのUser-Agent文字列の読み取り
.NET Framework 3.0 再頒布可能パッケージのコマンド ライン オプション
.NET Framework 3.0 再頒布可能パッケージのエラー コード
付録 A: .NET Framework言語パックの検出
付録 B: インターネット エクスプローラーを使用して.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 Service Pack 2 と Windows Server 2003 Service Pack 1 で.NET Frameworkを利用できるようにします。

次の表に、.NET Framework 3.0 に含まれるテクノロジの一部を示します。

テクノロジ 説明
Windows Presentation Foundation (WPF、以前のコード名は "Avalon") UI、ドキュメント、メディアを組み合わせた次世代のスマート クライアント アプリケーションを構築するためのクラスを提供します。
Windows Communication Foundation (WCF、以前のコード名は "Indigo") サービス指向アプリケーションを構築するための統合プログラミング モデルとランタイムを提供します。
Windows Workflow Foundation (WF) ビジネス プロセスをモデル化するワークフロー対応アプリケーションを構築するためのプログラミング モデル、エンジン、およびツールを提供します。
Windows CardSpace (以前のコード名は "InfoCard") 個人情報を使用してオンラインで作業する際の安全性を簡素化および向上させるテクノロジを提供します。
Microsoft .NET Framework 2.0 Windows および Web ベースのアプリケーションを生産的に構築できるようにします。

新しいコンポーネント (WPF、WF、WCF、CardSpace) を表すクラスはすべて、 System 名前空間の一部です。 共通言語ランタイム (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 デベロッパー センター Web サイトの .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 デベロッパー センター Web サイトの 「ソフトウェア更新テクノロジ 」ページを参照してください。

将来の.NET Framework リリースのロードマップ

一般に、.NET Frameworkの新しいバージョンは、以前のバージョンとの下位互換性を提供するように設計されています。 セキュリティの問題やその他の理由により新しいリリースで破壊的変更が発生した場合、Microsoft では、既存のバージョンと並行して新しいリリースをインストールできます。

.NET Frameworkの今後のリリースの詳細については、Microsoft .NET Framework デベロッパー センター Web サイトを参照してください。

.NET Framework 3.0 のインストール

.NET Framework 3.0 は、既定で Microsoft Windows Vista にインストールされます。 "Longhorn" という名前の Microsoft Windows Server コードでは、役割管理ツールを使用して Windows 機能として.NET Frameworkをインストールできます。

Windows XP および Windows Server 2003 では、.NET Framework 3.0 をインストールすると、まだインストールされていない.NET Framework 2.0 コンポーネントも追加されます。 .NET Framework 2.0 が既にインストールされている場合、.NET Framework 3.0 インストーラーは、Windows Presentation Foundation (WPF)、Windows Workflow Foundation (WF)、Windows Communication Foundation (WCF)、および 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 は、Windows Communication Foundation (WCF)、Windows Presentation Foundation (WPF)、Windows Workflow Foundation (WF)、および Windows CardSpace のすべてのランタイム アセンブリと参照アセンブリに適用されます。

.NET Framework 3.0 のデプロイ

このセクションでは、アプリケーションで使用する.NET Framework 3.0 のデプロイについて説明します。

ソフトウェア要件

.NET Framework 3.0 をインストールするには、ターゲット コンピューターに次のいずれかのオペレーティング システムがインストールされている必要があります。

  • Microsoft Windows XP Home または Microsoft Windows XP Home Professional Service Pack 2 以降。
  • Service Pack 1 以降を使用する Microsoft Windows Server 2003 ファミリ。

.NET Framework 2.0 はターゲット プラットフォームで引き続きサポートされることに注意してください。 詳細については、MSDN Web サイトの .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 が必要
最小値 Pentium 400 MHz 96 MB
推奨 Pentium 1 GHz 以上 256 MB 以上

.NET Frameworkの再配布権限

Microsoft は、組織内およびソフトウェア ソリューションの一部として.NET Frameworkを展開する顧客を強くサポートしています。 .NET Framework 3.0 ランタイムを配布するには、ライセンス条項に同意する必要があります。 アプリケーションまたはサード パーティに.NET Framework 3.0 を再配布する方法については、MSDN Web サイトの「.NET Frameworkおよびその他のランタイム コンポーネントの再配布に関する ISV ガイド」ページを参照してください。

メモ再頒布可能パッケージの権利は、Microsoft .NET Framework 3.0 の公式リリース バージョンにのみ予約されています。 Microsoft .NET Framework 3.0 のプレリリース バージョンをアプリケーションと共に再配布することはできません。

.NET Framework 3.0 を展開するための IT 管理者ツール

.NET Framework 3.0 には、IT 管理者がフィールド クライアントに展開するための 2 つの方法 (管理者モードのセットアップと Active Directory の展開) が用意されています。

管理者モードのセットアップ

管理者モードのセットアップを使用すると、IT 管理者は Microsoft Systems Management Server (SMS) やその他のソフトウェア配布ツールを使用して.NET Frameworkを展開できます。 IT 管理者は、サイレント モードでフレームワークのセットアップを実行します。 エラーが発生した場合、セットアップはサイレントモードで終了し、エラー コードをログに記録します。

Active Directory ドメイン サービス (AD DS) の社内への展開 (レベル 100)

Active Directory 展開では、管理者は、.msi ファイルを展開する順序で、.NET Framework 3.0 インストール パッケージの個々の.msi ファイルをグループ ポリシーに追加する必要があります。 グループ ポリシーが有効になると、このグループ ポリシーに含まれるすべてのクライアントは、起動してネットワークに再接続するときに、コンポーネントを自動的にインストールします。 エラーが発生した場合、セットアップはサイレントモードで終了し、エラー コードをログに記録します。

管理展開手順の詳細については、「 Administrators Deployment Guide Web ページ」を参照してください。

アプリケーションでの.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 展開ガイド Web ページ」を参照してください。

.NET Framework 3.0 以前のリリースの検出

レジストリ キーを読み取り、インターネット エクスプローラーでユーザー エージェント文字列に対してクエリを実行することで、.NET Framework 3.0 がインストールされているかどうかを検出できます。

レジストリ キーの読み取り

指定したレジストリ キー値を探して、.NET Frameworkがコンピューターにインストールされているかどうかを検出できます。 次の表に、特定のバージョンの.NET Frameworkがインストールされているかどうかを確認するためにテストできるレジストリ キーと値を示します。

Version レジストリ キー名
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 Install (DWORD 値 = 1)
1.1 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v1.1.4322 Install (DWORD 値 = 1)
1.0 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\policy\v1.0 3705 (REG_SZ値 = 3321-3705)

メモ.NET Framework 1.0 および 1.1 の以前にリリースされたサービス パックの検出の詳細については、マイクロソフト サポート技術情報の「インストールされている.NET Frameworkのバージョンとサービス パックが適用されているかどうかを確認する方法」の記事 318785を参照してください。

インターネット エクスプローラーでのUser-Agent文字列の読み取り

ブラウザー ベースのアプリケーションの場合は、そのコンピューターで実行されているインターネット エクスプローラーを使用してユーザー エージェント文字列を調べることで、.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: .NET Framework 3.0 を検出するためのサンプル スクリプト インターネット エクスプローラーブラウザーで実行され、現在の.NET Frameworkバージョン番号に関する情報を表示するサンプル JavaScript プログラムの一覧を示します。

ブラウザー ヘッダーで送信されるユーザー エージェント文字列は、次の表に示すように、サーバー コンピューターのレジストリに格納されます。

Version レジストリ キー
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) を実行するときに含めることができるオプションを示します。

オプション 説明
/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) によって返されるエラー コードの一覧です。 エラー コードは、インストーラーのすべてのバージョンで同じです。

エラー コード 説明
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 Web サイトの「再頒布可能パッケージテクニカル リファレンス.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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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

Install (DWORD 値 = 1)

Version 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)

Version 3.0

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

InstallSuccess(DWORD 値 = 1)

付録 B: インターネット エクスプローラーを使用して.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).