Insider's Eye

.NET Framework 3.0の中身をのぞいてみよう!

デジタルアドバンテージ 一色 政彦
2006/11/11

Page1 Page2

 先日の11月7日(米国時間)、ついに.NET Framework 3.0(RTM版)が公開された。

■.NET Framework 3.0とは

 .NET Framework 3.0は、すでに「Insider's Eye: .NET Framework 3.0とは?」でも紹介しているように、現行の.NET Framework 2.0の次バージョンとなる.NETの実行環境だ。

 ただし、その実行エンジン(CLR)と基本クラス・ライブラリは.NET Framework 2.0から何も変更されておらず、まったく同一のもの(バージョン「2.0.50727」)が含まれている。そこに新たに次の4つのテクノロジを追加したものが.NET Framework 3.0である。

  • WPF:Windows Presentation Foundation(プレゼンテーション技術)
  • WCF:Windows Communication Foundation(コミュニケーション技術)
  • WF:Windows Workflow Foundation(ワークフロー技術)
  • WCS:Windows CardSpace(ID技術)

 .NET Framework 3.0はもともとWindows Vista向けの開発フレームワークとして提供される予定だったが、市場のニーズなどにより、Windows XPやWindows Server 2003向けにも提供されるように路線変更されたという経緯がある(ちなみにWindows 2000向けには提供されない)。

 今回リリースされたのは、そのWindows XP/Windows Server 2003を(主な)ターゲットとした.NET Framework 3.0である(なおWindows Vistaでは.NET Framework 3.0がプレインストールされている)。

■.NET Framework 3.0のインストール要件

 .NET Framework 3.0をインストールするためのWindows XP/Windows Server 2003それぞれの要件(Service Packの適用)は次のとおりだ。

  • Windows XP Service Pack 2
  • Windows Server 2003 Service Pack 1

 なお、この要件を満たしたOSは、DirectX 9.0cがインストールされている状態となる。DirectX 9.0c(主にDirect3D 9)は、.NET Framework 3.0で追加されたWPFによって活用されるグラフィック・テクノロジの基盤である。ちなみに、DirectX 9対応ビデオ・カードが搭載されていないコンピュータ上では、グラフィック処理をソフトウェアでエミュレーションするようになっている。

■.NET Framework 3.0のセットアップ

 それではさっそく.NET Framework 3.0をインストールしてみよう。

 次のリンク先のサイトにある.NET Framework 3.0セットアップを実行すると、.NET Framework 3.0をインストールできる。その際、自動的に.NET Framework 3.0の日本語ランゲージ・パックも導入されるようになっている。

 .NET Framework 3.0は先ほども述べたように.NET Framework 2.0を内包している。このため上記のパッケージでは、そのインストール先のクライアント環境にすでに.NET Framework 2.0が導入されていれば、新しいコンポーネントのみがインストールされる。

 .NET Framework 2.0がインストールされていない場合には、自動的に.NET Framework 2.0セットアップをダウンロードして暗黙的にインストールするようになっている(さらにこの際、.NET Framework 2.0の日本語ランゲージ・パックも同時にインストールしてくれる)。

■.NET Framework 3.0のフォルダ構成

 .NET Framework 3.0インストール後のフォルダ構成についても見ておこう。

 .NET Framework 2.0では、.NET Framework 2.0を管理・構成するための各種ツールやコンポーネントから、基本クラス・ライブラリ、そしてコンパイラおよび実行エンジン(CLR)までのすべてが、

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

内に格納されていた。しかし.NET Framework 3.0では、このフォルダ構成が変更されている。

.NET Framework 3.0(の追加機能)を管理・構成するための各種ツールやコンポーネント
 まず「%windir%\Microsoft.NET\Framework」の下には「v3.0」というフォルダが追加される。このフォルダの配下には、.NET Framework 3.0で追加された機能(WPF、WCF、WFなど)を管理・運用するための各種ツールやコンポーネントなどが格納されているようだ。

%windir%\Microsoft.NET\Framework\v3.0」の内容

追加されたライブラリ
 それではWPF/WCF/WFのライブラリはどこにあるのかというと、ここがポイントだが、実は、

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

に格納されている。従って、.NET Framework 3.0で追加されたアセンブリをプロジェクトで参照するには、このフォルダ内から.DLLファイルを探さなければならない(.NET Framework 2.0に含まれるアセンブリは以前と同じ場所を探せばよい)。

「%ProgramFiles%\Reference Assemblies\Microsoft\Framework\v3.0」の内容

コンパイラおよび実行エンジン
 最後に.NET Framework 3.0で開発したプログラムをビルドするためのコンパイラや、生成されたプログラムを実行するためのCLRだが、これらは.NET Framework 2.0のものが使われる。つまり、コンパイラ(csc.exeやvbc.exeなど)は「%windir%\Microsoft.NET\Framework\v2.0.50727」内のものが使われることになり、アプリケーションは.NET Framework 2.0のCLR上で動作することになる。

【コラム】.NET Framework 3.0向けのMSBuildファイル
 .NET Framework 2.0用の「%windir%\Microsoft.NET\Framework\v2.0.50727」内部でも、いくつかのファイルが追加されたり、更新されたりしている。例えば「Microsoft.WinFX.targets」という名前のファイルが追加されるが、これは.NET Framework 3.0で作成したソース・コードをMSBuildによってビルドする際に必要となるものだ(MSBuildでインポートして利用するもの)。

 
 

 INDEX
  Insider's Eye
  .NET Framework 3.0の中身をのぞいてみよう!
  1..NET Framework 3.0とは
    2..NET Framework 3.0開発を始めるには?
 
 Insider's Eye


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間