Windows Server 2012 R2をインストールしたら.NET Frameworkの選択肢が3.5と4.5になって正直びっくり。4.0はどこ行ったのか。3.0とかどうなるのか。
調べてみたら案外複雑な感じになっていたのでまとめてみます。
.NET Framework 4.5は4.0も完全に含む
4.5は4.0の機能を完全に含んでいるので、4.5をインストールすれば4.0のアプリケーションも完全に動作するみたいです。さらに、4.5をインストールするとp4.0は自動的にアンインストールされるみたいです。
なおIISとかで.NET FWを登録する際に使われるバージョンはV4.0.30319となっています。
.NET Framework 3.5は3.0以下を含む
.NET FW 3.5では3.0の機能を完全に含みます。つまり3.0や2.0の機能を使いたければ3.5をインストールするだけで事足ります。
当然ですが、3.5では4.0の機能は使えません。別途使う必要があります。
ここまではいいのだが…
ここまでは別に悩む点はないのですが、実は少し落とし穴があります。
それは4.5をインストールすれば4.0は完全に動作するけど、3.5以下も動作する保証がないということです。つまり、3.5を動作することもあるというだけで、別に完全動作するとは言われていない。少し厄介ですね
つまり動作できるパソコンの幅を広げるために2.0でビルドし、「最新バージョンの.NET FWを入れてください」と投げることはできないのです。
ちなみにXPでは.NET FW 4.5はインストールできません。互換性の問題もあるんでしょうけど、なので再配布で4.5をいれるのは少しまずいかもしれません。
まとめ
もし、2.0でビルドするならば、確実に動作するように3.5のインストールを誘導するよう、おすすめします。
また、4.5はXPで動作しないのでまだ移行してしまうのは早いかもしれません。
一番バランスとれているのは4.0でしょう。2000なんてユーザー、もうさすがに少ないでしょうしそんなユーザーがアクティブにソフトをインストールしまくるとも思えませんし。