.NET Framework 環境まとめ
多くの種類が提供されている .NET Framework の中から、どのパッケージをインストールすれば良いかを検討するため .NET Framework 環境の現状を調査する。
結論:インストールする .NET Framework
(あらゆるバージョンの) .NET Framework アプリケーションの実行に必要十分な .NET Framework 環境を Windows のバージョンごとに整理する。インストールを推奨する .NET Framework 本体、言語バック、Service Pack (SP) の一覧は次の通り。
- Windows 95, NT 3.51
- .NET Framework は Windows 95, NT 3.51 をサポートしていない
- Windows 98, 98 SE, Me
- Windows NT 4.0 (SP6a)
- Windows 2000
- Windows XP
- .NET Framework 1.0, Service Pack 3
- .NET Framework 1.1, 日本語 Language Pack, Service Pack 1
- .NET Framework 3.5 Service Pack 1 (3.0 SP2, 2.0 SP2, Language Pack 含む)
- Windows Server 2003 (R2)
- .NET Framework 1.0, Service Pack 3
- .NET Framework 3.5 Service Pack 1 (3.0 SP2, 2.0 SP2, Language Pack 含む)
- Windows Vista, Server 2008
- .NET Framework 1.1, 日本語 Language Pack, Service Pack 1
- .NET Framework 3.5 Service Pack 1 (3.0 SP2, 2.0 SP2, Language Pack 含む)
- Windows 7, Server 2008 R2
- 標準で .NET Framework 3.5 Service Pack 1 (3.0 SP2, 2.0 SP2 含む) がインストールされている
※ 現時点 (2010 年 1 月) では .NET Framework 4 は Beta 2 のためインストール対象から除外している。
.NET Framework について
.NET Framework は Windows ベースのアプリケーションの開発・実行環境。共通言語基盤 (CLI) および共通言語ランタイム (CLR) によって複数の言語による開発やマルチプラットフォームでの動作を可能としている。詳細については以下のサイトを参照。
.NET Framework 派生のフレームワーク
.NET Framework 派生のフレームワークとして次のようなものがあるが、この文書では詳しく扱わない。
- .NET Framework Client Profile
- クライアント (デスクトップ) アプリケーションを対象とする .NET Framework のサブセット。クライアントアプリケーションの実行に必要な .NET Framework の一部の機能のみを提供することで .NET Framework のサイズ縮小を図っている。
- .NET Compact Framework
- スマートデバイス用のアプリケーションを対象とする .NET Framework のサブセット。携帯電話や PDA、セットトップボックスなどのデバイスで実行するアプリケーションを開発する。
- Microsoft Silverlight
- RIA (Rich Interactive Application) を対象とする .NET Framework ベースのフレームワーク。ブラウザーやプラットフォームに依存しない Web アプリケーションを開発する。
- .NET Compact Framework for Xbox 360 ( XNA Framework)
- Xbox 360 のビデオゲームやエンターテインメント用に設計されたフレームワーク。.NET Compact Framework の一部の機能が組み込まれており Xbox 360 用に最適化されている。
.NET Framework の分かりにくさ
.NET Framework アプリケーションの実行には対応するバージョンの .NET Framework が必要となるが、どのバージョンの .NET Framework をどのようにインストールすれば良いかが分かりにくいのが現状となっている。.NET Framework の分かりにくさの要因として次のような項目が考えられる。
- 多種多様なパッケージ
-
.NET Framework では非常に多種多様なパッケージが提供されているため、どのパッケージをインストールすれば良いかが分かりにくい。
たとえばパッケージの種類として複数バージョン (1.0/1.1/2.0/3.0/3.5/4)、サービスパック、言語パック、異なるアーキテクチャー (x86/x64/IA64)、インストーラー形式 (フルパッケージ/ブートストラップ/差分パッケージ)、クライアントアプリケーション向けの Client Profile がある。 - インストーラー形式
-
.NET Framework では 3 種類の形式 (フルパッケージ/ブートストラップ/差分パッケージ) のインストーラーが提供されている。バージョンによって提供されるインストーラー形式は異なり、複数の形式で提供される場合もある。
たとえば .NET Framework 1.0, 1.1 のサービスパックは差分パッケージで、.NET Framework 2.0 のサービスパックはフルパッケージで、.NET Framework 3.0 SP1 はブートストラップで、.NET Framework 3.5 SP1 はフルパッケージおよびブートストラップで提供される。
なおブートストラップでは自動的に言語パックもインストールされるが、フルパッケージには言語パックは含まれないため別途インストールする必要がある。 - サービスパックの適用方法
-
サービスパックを適用して .NET Framework を更新する方法が .NET Framework や Windows のバージョンによって異なる。基本的にはサービスパックをダウンロードして手動で適用する方法と、自動更新や Windows Update (Microsoft Update) による配信で自動適用する方法がある。ただし Windows に標準でインストールされている .NET Framework に対して手動でサービスパックを適用できない場合がある。
たとえば Windows Vista, Server 2008 で .NET Framework 2.0 SP2 を適用するには .NET Framework 3.5 SP1 をインストールする必要がある。また Windows Vista で .NET Framework 3.0 SP1 を適用するには Windows Vista SP1 を適用する必要がある。
なお Windows のバージョンに関わらず .NET Framework 3.0 SP2 は単体では提供されないため .NET Framework 3.5 SP1 を適用する必要がある。 - 内部的に含まれる過去バージョン
- 一部の .NET Framework は内部的に過去のバージョンを含む構成となっている。たとえば .NET Framework 3.0, 3.5 をインストールすると、自動的に以前のバージョンの .NET Framework (サービスパックや言語バック含む) がインストールされる。一方 .NET Framework 1.1, 2.0, 4 には以前のバージョンは含まれない。
- Windows 標準搭載 (自動配信)
- Windows のバージョンによっては特定のバージョンの .NET Framework が Windows に標準搭載されている。また自動更新や Windows Update (Microsoft Update) による配信で自動的にインストールされる場合もある。Windows に標準搭載および自動配信されない場合は .NET Framework 再頒布パッケージをダウンロードして手動でインストールする必要がある。
- 複数バージョンの共存
- 一般に新バージョンの .NET Framework は以前のバージョンとの下位互換性を保つが、完全な互換性の維持は現実的には困難である。そこで複数バージョンの .NET Framework をインストール可能にすることで、.NET Framework アプリケーションを同一バージョンの .NET Framework で実行できるようにしている。一般的には複数バージョンのプログラムがインストールされている場合、最新バージョンでないプログラムは削除される場合が多いが、.NET Framework では複数のバージョンを共存させることができる。
- コントロールパネルでの .NET Framework の表記
- コントロールパネルのインストールされているプログラムの一覧に表示される .NET Framework の表記が統一されていない。たとえばサービスパックは .NET Framework 1.1 では明記されず、.NET Framework 2.0, 3.0 では "Service Pack"、.NET Framework 3.5 では "SP" と表記される。また日本語の言語バックは .NET Framework 1.1 では "Japanese Language Pack"、.NET Framework 2.0, 3.0 では "Language Pack - JPN"、.NET Framework 3.5, 4 では "Language Pack - 日本語" と表記される。なお日本語言語バックの代わりに日本語の再頒布パッケージが提供されている .NET Framework 1.0 では "(JPN)" と表記される。
※ Java では基本的に最新のバージョン (現時点では JRE 6 Update 18) をインストールすれば良いので .NET Framework と比べると多少分かりやすい。インストールファイルの種類として Platform (OS, 32/64 bit) と Offline/Online、そして Client Profile に相当する Java Kernel がある。Java Kernel ではすべてのバンドルのダウンロードとインストールが完了すると Kernel JRE が通常の JRE と同一になる。そのため Java アプリケーションの開発者およびエンドユーザーは両者の違いを気にする必要がない。なお Java の更新は Java Update によって自動的にインストールされる。
.NET Framework 基本情報
バージョン
.NET Framework | インストーラー形式 | 再頒布可能パッケージ | 内部的に含まれる過去バージョン |
1.0 | フルパッケージ | ○ | |
1.0 SP1 | 差分パッケージ | ||
1.0 SP2 | 差分パッケージ | 1.0 SP1 | |
1.0 SP3 | 差分パッケージ | 1.0 SP2 | |
1.1 | フルパッケージ | ○ | |
1.1 SP1 | 差分パッケージ | ||
2.0 | フルパッケージ | ○ | |
2.0 SP1 | フルパッケージ | ○ | 2.0 |
2.0 SP2 | フルパッケージ | ○ | 2.0 SP1 |
3.0 | フルパッケージ/ブートストラップ | ○ | 2.0 |
3.0 SP1 | ブートストラップ | ○ | 2.0 SP1, 3.0 |
3.0 SP2 | - (単体では提供されない) | ○ (3.5 SP1 に含まれる) | 2.0 SP2, 3.0 SP1 |
3.5 | フルパッケージ/ブートストラップ | ○ | 2.0 SP1, 3.0 SP1 |
3.5 SP1 | フルパッケージ/ブートストラップ | ○ | 2.0 SP2, 3.0 SP2, 3.5 |
4 | フルパッケージ/ブートストラップ | ○ |
- フルパッケージ
- 単体&オフラインで実行可能な完全な再頒布可能パッケージ。.NET Framework 本体などの必要なコンポーネントがすべて含まれている。ただし言語バックは含まれない。
- ブートストラップ (Bootstrapper)
- 単体&オンラインで実行可能な再頒布可能パッケージ。.NET Framework 本体などは含まれず、必要なコンポーネントのみを検出してダウンロード&インストールする。併せて Windows の言語と一致する言語パックもインストールされる。必要なコンポーネントをセットアップ中に Web からダウンロードするためインストーラーのファイルサイズは小さい。
- 差分パッケージ
- インストール済みの .NET Framework 本体に適用される累積的な更新パッケージ。対応する .NET Framework 本体が予めインストールされている必要がある。
- 再頒布 (再配布) 可能パッケージ
- .NET Framework アプリケーションの実行に必要な共通言語ランタイム (CLR) と .NET Framework コンポーネントを含む再頒布可能なパッケージ。再頒布可能とは、ファイルを再配布 (複製、公開、アプリケーションの一部としての提供など) する権利が付与されていることを表す。
- 内部的に含まれる過去バージョン
- 一部の .NET Framework は内部的に過去のバージョンを含む構成となっている。そのため現在のバージョンから過去バージョンの機能を以前と同じように使用することができる。たとえば .NET Framework 3.5 をインストールすると .NET Framework 2.0 SP1, .NET Framework 3.0 SP1 も一緒にインストールされる。ただし .NET Framework 4 は内部的に過去のバージョンを含む形式ではなく、完全に新しいバージョンとして提供される。
※ .NET Framework に内部的に含まれる過去バージョンとの関係 (包含関係) をまとめると次のようになる。
配置パッケージ\内包パッケージ | 1.0 | 1.0 SP1 | 1.0 SP2 | 1.0 SP3 | 1.1 | 1.1 SP1 | 2.0 | 2.0 SP1 | 2.0 SP2 | 3.0 | 3.0 SP1 | 3.0 SP2 | 3.5 | 3.5 SP1 | 4 |
.NET Framework 1.0 | ○ | ||||||||||||||
.NET Framework 1.0 SP1 | ○ | ||||||||||||||
.NET Framework 1.0 SP2 | ○ | ○ | |||||||||||||
.NET Framework 1.0 SP3 | ○ | ○ | ○ | ||||||||||||
.NET Framework 1.1 | ○ | ||||||||||||||
.NET Framework 1.1 SP1 | ○ | ||||||||||||||
.NET Framework 2.0 | ○ | ||||||||||||||
.NET Framework 2.0 SP1 | ○ | ○ | |||||||||||||
.NET Framework 2.0 SP2 | ○ | ○ | ○ | ||||||||||||
.NET Framework 3.0 | ○ | ○ | |||||||||||||
.NET Framework 3.0 SP1 | ○ | ○ | ○ | ○ | |||||||||||
.NET Framework 3.0 SP2 | ○ | ○ | ○ | ○ | ○ | ○ | |||||||||
.NET Framework 3.5 | ○ | ○ | ○ | ○ | ○ | ||||||||||
.NET Framework 3.5 SP1 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | |||||||
.NET Framework 4 | ○ |
参考リンク
- 再頒布 (再配布) 可能パッケージ
- 内部的に含まれる過去バージョン
オペレーティングシステム要件
.NET Framework がサポートされているプラットフォームは次の通り。
OS \ .NET Framework | 1.0 (SP3) | 1.1 (SP1) | 2.0 | 2.0 (SP2) | 3.0 (SP2) | 3.5 (SP1) | 4 |
Windows 95 | |||||||
Windows 98, 98 SE | ○ | ○ | ○ | ||||
Windows Me | ○ | ○ | ○ | ||||
Windows NT 3.51 | |||||||
Windows NT 4.0 (SP6a) | ○ | ○ | |||||
Windows 2000 | ○ | ○ | ○ | ○ | |||
Windows XP | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
Windows Vista | ○ | ◎ | ◎ | ◎ | ○ | ○ | |
Windows 7 | ◎ | ◎ | ◎ | ◎ | ○ | ||
Windows Server 2003 | ○ | ◎ | ○ | ○ | ○ | ○ | ○ |
Windows Server 2003 R2 | ○ | ◎ | ○ | ○ | ○ | ○ | ○ |
Windows Server 2008 | ○ | ◎ | ◎ | ◎ | ○ | ○ | |
Windows Server 2008 R2 | ◎ | ◎ | ◎ | ◎ | ○ |
※ 「◎」は Windows に標準でインストールされていることを表す。なお自動更新や Windows Update (Microsoft Update)、Windows のサービスパック適用などによって自動的にインストールされる場合も含む。
※ 厳密には Windows のエディションやサービスパック、インストール構成などの違いによって .NET Framework のサポート状況は異なる。たとえば次のような場合がある。
- Windows XP Media Center/Tablet PC Edition には .NET Framework 1.0 SP3 が標準でインストールされている。
- .NET Framework 2.0 は Windows 2000 SP3 以降で、.NET Framework 2.0 SP1/SP2 は Windows 2000 SP4 以降でサポートされる。
- Windows Server 2008 ではアプリケーションサーバーとして構成した場合に .NET Framework 3.0 SP1 に対する組み込みのサポートが有効になる。またサーバーの役割として Windows Server Core を選択した場合は .NET Framework がすべて利用不可となる。
参考リンク
- .NET Framework システム要件
- .NET Framework 1.0/1.1 上で稼働するアプリケーションをお使いのお客様へ - .NET Framework 移行センター
- Windows Server 2008 における .NET Framework のサポート
- Microsoft .NET Framework 2.0 Service Pack 1 および Microsoft .NET Framework 3.0 Service Pack 1
- .NET Frameworkのバージョンを整理する - @IT
- 現実に最も使える.NETのバージョンはどれ? - @IT
バージョン間における互換性
.NET Framework の互換性 (上位互換性と下位互換性) に対するサポートの程度はバージョンによって異なる。高度な互換性が維持されている場合もあれば互換性が全くサポートされていない場合もある。.NET Framework のバージョン間における互換性 (上位互換性と下位互換性) のサポート状況は次の通り。
開発環境\実行環境 | 1.0 | 1.1 | 2.0 | 3.0 | 3.5 | 4 |
.NET Framework 1.0 | ○ | ○ | ○ | ○ | ○ | |
.NET Framework 1.1 | ○ | ○ | ○ | ○ | ○ | |
.NET Framework 2.0 | ○ | ○ | ○ | |||
.NET Framework 3.0 | ○ | ○ | ||||
.NET Framework 3.5 | ○ | |||||
.NET Framework 4 | ○ |
※ 下位バージョンの .NET Framework アプリケーションが上位バージョンで正しく動作するには、下位非互換の変更に影響されない機能のみを使用している必要がある。
※ .NET Framework 1.1 アプリケーションが .NET Framework 1.0 で正しく動作するには、.NET Framework 1.0 の機能のみを使用している必要がある。
一般に新バージョンの .NET Framework は以前のバージョンとの下位互換性を保つように設計されている。ただしセキュリティの改善や正確性または機能性の向上のために、互換性を完全に維持できない変更が .NET Framework に対して加えられる場合がある。なお初期の .NET Framework (1.0/1.1) ではバージョン間の上位互換性の維持も開発目標の一つとなっていた。.NET Framework では上位互換性と下位互換性は次のように定義されている。
- 上位互換性
- 以前のバージョンの .NET Framework で新しいバージョンの .NET Framework アプリケーションが実行できることを意味する。.NET Framework では .NET Framework 1.1 アプリケーションに対してのみ上位互換性がサポートされる。.NET Framework 1.1 以外のバージョンでは上位互換性はサポートされない。
- 下位互換性
- 新しいバージョンの .NET Framework で以前のバージョンの .NET Framework アプリケーションが実行できることを意味する。.NET Framework は高度な下位互換性のサポートを提供する。現行バージョンで動作する .NET Framework アプリケーションのほとんどは、次のバージョンの .NET Framework でも動作する。
.NET Framework では .NET Framework 1.0、1.1、2.0 の関係と .NET Framework 2.0、3.0、3.5 の関係が次のように異なる。
- .NET Framework 1.0、1.1、2.0 の関係
- それぞれのバージョンが完全に独立している。どれか 1 つのバージョンを単独でインストールして単体で実行することができる。各バージョンはそれぞれ独自の共通言語ランタイム (CLR) やクラスライブラリ、コンパイラなどを持つ。上位バージョンは下位バージョンと同等の機能を提供することで、ある程度の下位互換性を実現している。
- .NET Framework 2.0、3.0、3.5 の関係
- 上位バージョンは下位バージョンをベースに様々な機能強化を施した拡張バージョンとなる。上位バージョンは下位バージョンに依存するため単独でインストールすることはできない。上位バージョンをインストールする際は自動的に下位バージョンがインストールされる。3 つのバージョンはいずれも .NET Framework 2.0 の共通言語ランタイム (CLR) を使用するため、より高度な下位互換性が担保される。
参考リンク
- .NET Framework 移行センター
- .NET Framework の互換性と移行に関する情報
- バージョンの互換性
- 企業における Microsoft .NET Framework 2.0 のインストールについて
- Microsoft .NET Framework バージョン 3.0 の導入
- .NET Framework 3.5 のアーキテクチャ
- side-by-side 実行の概要
- .NET Framework の side-by-side 実行
- .NET Frameworkのバージョンを整理する - @IT
- Windows Vistaにおける.NETアプリケーションの互換性問題 - Windows Vista徹底解説:ITpro
- とことん理解する .NET Framework 3.5(1/4):CodeZine
.NET Framework 再頒布可能パッケージ
.NET Framework アプリケーションの実行環境。再頒布可能パッケージには .NET Framework アプリケーションの実行に必要な共通言語ランタイム (CLR) や .NET Framework コンポーネントなどが含まれる。
提供されている再頒布可能パッケージの一覧と各パッケージに対応する言語バック (Language Pack) や Service Pack (SP) などは次の通り。
- .NET Framework 4 Beta 2
-
- 再頒布可能パッケージ (Client Profile & Extended)
- フルパッケージ ( 日本語 Language Pack)
- Web ブートストラップ (Language Pack 含む)
- Client Profile 再頒布可能パッケージ
- フルパッケージ ( 日本語 Language Pack)
- Web ブートストラップ (Language Pack 含む)
- 再頒布可能パッケージ (Client Profile & Extended)
- .NET Framework 3.5
-
- 再頒布可能パッケージ (3.0 SP1, 2.0 SP1 含む)
- フルパッケージ ( 日本語 Language Pack)
- ブートストラップ (Language Pack 含む)
- Service Pack 1 (3.5, 3.0 SP2, 2.0 SP2 含む)
- フルパッケージ ( 日本語 Language Pack)
- ブートストラップ (Language Pack 含む)
- Client Profile Setup ブートストラップ (Client Profile 3.0, Client Profile 2.0, Language Pack 含む)
- 再頒布可能パッケージ (3.0 SP1, 2.0 SP1 含む)
- .NET Framework 3.0
-
- 再頒布可能パッケージ (2.0 含む)
- フルパッケージ ( 日本語 Language Pack)
- ブートストラップ (Language Pack 含む)
- Service Pack 1 ブートストラップ (3.0, 2.0 SP1, Language Pack 含む)
- Service Pack 2 (3.0 SP1, 2.0 SP2 含む) - 単体では提供されず 3.5 SP1 に含まれる
- 再頒布可能パッケージ (2.0 含む)
- .NET Framework 2.0
- .NET Framework 1.1
- .NET Framework 1.0
-
- 再頒布可能パッケージ
- Service Pack 1
- Service Pack 2 (1.0 SP1 含む)
- Service Pack 3 (1.0 SP2 含む)
- 再頒布可能パッケージ
Windows SDK (.NET Framework SDK)
.NET Framework アプリケーションの開発環境。いずれの SDK (Software Development Kit) にも .NET Framework 本体は含まれないため、再頒布可能パッケージを別途インストールする必要がある。
- Microsoft Windows SDK
- .NET Framework SDK
-
- .NET Framework 2.0 SDK 日本語版 ( x86, x64, IA64)
- .NET Framework 1.1 SDK
- .NET Framework 1.0a SDK (ダウンロード不可)
※ .NET Framework 3.0 以降は Microsoft Platform SDK と .NET Framework SDK が統合され Windows SDK として提供される。
詳細は以下のリンクを参照。
.NET Framework 関連の Tips
インストール済みバージョンの確認
Windows にインストールされている .NET Framework のバージョンを確認する方法について調査。現時点では「レジストリ」の項目で紹介している @IT のツールがベターな方法だが、いくつか不満もあるので自分でツールを作成する方向で検討する。
- コントロールパネル
-
インストールされている .NET Framework のバージョンおよびサービスパックの一覧が列挙される。一番簡単な方法だが Windows インストール後に手動または自動的にインストールされた .NET Framework のみが対象となるため、Windows に標準で搭載されている .NET Framework は表示されない。
- Windows 98, 98 SE, Me, 2000: コントロールパネル - アプリケーションの追加と削除
- Windows XP, Server 2003: コントロールパネル - プログラムの追加と削除
- Windows Vista, 7 など: コントロールパネル - プログラムのアンインストール (プログラムと機能)
- ファイルバージョン
- %systemroot%\Microsoft.NET\Framework フォルダ以下のファイルのファイルバージョンから .NET Framework のバージョンや適用されているサービスパックを特定する。ただし MSDN で紹介されている Mscorlib.dll は 3.0 以降は存在しないため、ほかのファイルで確認する必要がある。しかし .NET Framework のすべてのバージョンに共通するファイルで、かつサービスパックなどの適用などでバージョンが常に更新されるファイルがあるかは不明。
- レジストリ
-
HKLM\SOFTWARE\Microsoft\NET Framework Setup キー以下のレジストリ値から .NET Framework のバージョンや適用されているサービスパックを特定する。手動での確認は面倒なためバージョン一覧を列挙するツールが @IT で提供されている。ただし現時点では .NET Framework 4 には対応していない。また環境によってはエラーとなるためソースコードを修正する必要がある。
- .NET Frameworkのバージョンを確認する方法 - @IT (3.5 SP1)
- 共通言語ランタイム (CLR) バージョン (JavaScript)
- 共通言語ランタイム (CLR) のバージョンから .NET Framework のバージョンを確認する。MSDN で紹介されている方法では HTML ファイルを作成して確認する必要がある。Windows にインストールされている .NET Framework のすべてのバージョンや適用されているサービスパックが特定できるかは未確認。
※ バージョン確認時に必要となる .NET Framework のバージョン番号については .NET Framework - Wikipedia > バージョン の .NET バージョンリスト (表) が参考になる。
複数バージョンのインストール
Windows に .NET Framework 再頒布可能パッケージをインストールすると、自動的に以前のバージョンの .NET Framework (サービスパックや言語バック含む) がインストールされる場合がある。Windows にインストールされた .NET Framework 環境の一覧は、コントロールパネルのインストールされているプログラムの一覧から確認することができる。
- Windows 98, 98 SE, Me, 2000
- コントロールパネル - アプリケーションの追加と削除
- Windows XP, Server 2003
- コントロールパネル - プログラムの追加と削除
- Windows Vista, 7 など
- コントロールパネル - プログラムのアンインストール (プログラムと機能)
参考までに、Windows XP 日本語環境に以下の .NET Framework をインストールした場合に、コントロールパネルのインストールされているプログラム一覧に表示される項目を示す。
- .NET Framework 1.0, Service Pack 3
- .NET Framework 1.1, 日本語 Language Pack, Service Pack 1
- .NET Framework 3.5 Service Pack 1 ブートストラップ (3.0 SP2, 2.0 SP2, Language Pack 含む)
上記の .NET Framework をインストールすると、コントロールパネルのインストールされているプログラム一覧には次のような項目が追加される。
- Microsoft .NET Framework (JPN) v1.0.3705
- Microsoft .NET Framework 1.1
- Microsoft .NET Framework 1.1 Japanese Language Pack
- Microsoft .NET Framework 2.0 Service Pack 2
- Microsoft .NET Framework 2.0 Service Pack 2 Language Pack - JPN
- Microsoft .NET Framework 3.0 Service Pack 2
- Microsoft .NET Framework 3.0 Service Pack 2 Language Pack - JPN
- Microsoft .NET Framework 3.5 Language Pack SP1 - 日本語
- Microsoft .NET Framework 3.5 SP1
※ スクリーンショット:複数バージョンの .NET Framework インストール時の「プログラムの追加と削除」 (Windows XP)
不要な .NET Framework の削除
Windows に複数のバージョンの .NET Framework がインストールされている場合に、削除 (アンインストール) 可能な .NET Framework は次の通り。
- .NET Framework 1.0 (利用中の .NET Framework 1.0 アプリケーションがない場合)
- .NET Framework 1.1 (利用中の .NET Framework 1.1 アプリケーションがない場合)
- 言語バック (.NET Framework が出力するエラーメッセージなどのリソースが英語でも構わない場合)
逆に削除 (アンインストール) しても問題ないと思われがちだが実際には問題となる .NET Framework は次の通り。
- 過去バージョンの .NET Framework 2.0, 3.0 (利用中の .NET Framework 2.0, 3.0 アプリケーションがない場合も含む)
- .NET Framework 3.0, 3.5 は内部的に過去のバージョン (.NET Framework 2.0, 3.0) を含む構成となっているため
- 一般的には複数バージョンのプログラムがインストールされている場合、最新バージョンでないプログラムは削除される場合が多い
- .NET Framework のサービスパック
- .NET Framework のサービスパックはサービスパックなしの .NET Framework と統合されているため
- コントロールパネルのインストールされているプログラム一覧にサービスパックなしの .NET Framework は表示されない
- サービスパックが適用されていないバージョンは便宜的に SP0 (Service Pack 0) や無印などと呼ばれる
- .NET Framework のサービスパックはサービスパックなしの .NET Framework と統合されているため
従って .NET Framework 関連のよくある質問「最新バージョンでない .NET Framework は削除 (アンインストール) しても問題ないか」に対する回答は次のようになる。
- 基本的には問題となるため削除は推奨されない
- 利用中の .NET Framework 1.0/1.1 アプリケーションがない場合は .NET Framework 1.0/1.1 を削除可能
- 利用中の .NET Framework 2.0, 3.0 アプリケーションがない場合であっても .NET Framework 2.0, 3.0 は削除してはいけない
- .NET Framework のサービスパックはサービスパックなしの .NET Framework (SP0) と統合されているため .NET Framework のバージョンに関わらず削除してはいけない
- .NET Framework が出力するエラーメッセージなどのリソースが英語でも構わない場合は言語パックを削除可能。そうでない場合は .NET Framework のバージョンに関わらず削除は推奨されない。
一括アンインストール
Windows にインストールされている .NET Framework を一括して削除することで、コントロールパネルから1つずつ削除する手間を省く。 KB923100 で紹介されている次のツールが便利。
- Windows Installer CleanUp ユーティリティ
- .NET Framework 自動クリーンアップツール
- .NET Framework の開発を担当した Microsoft のプログラムマネージャが作成したツール (Microsoft 製の公式なツールではない)
添付ファイル
-
InstallMulti.NETFramework_XP.png
(30.8 KB) - attosoft が2年前に追加。
複数バージョンの .NET Framework のインストール (Windows XP)