マイクロソフトが8月3日に公開したVisual Studio 2005日本語版ベータ1(関連記事)では,64ビット対応アプリケーションの開発も可能である。Visual Studio 2005の統合開発環境(IDE)は32ビット版だが,64ビット対応のネイティブ・アプリケーション(Win64アプリケーション)をVisual C++の64ビット版を使ってクロス開発できる。

 .NET FrameworkはVisual Studio 2005の出荷と同時に2.0にバージョンアップされ,64ビット版も初めて登場する。.NET Framework 2.0のベータ版は,Visual Studio 2005ベータ版と同時に配布が始まっている。

 .NETアプリケーションに関しては,コンパイラに32ビット/64ビットの区別はなく,1つのアセンブリで両方に対応する。つまり,32ビット環境ならば32ビット・アプリケーションとして,64ビット環境ならば64ビット・アプリケーションとして動作する。AMD64対応の64ビットWindows上に,32ビットと64ビットの2つの.NET Frameworkがインストールされている場合は,64ビット版が優先される。

 .NET Frameworkは,OSの違いを吸収するよう設計されている。例えばデータ型の大きさは,CTS(共通型システム)で規定されており,プラットフォームが32ビット/64ビットにかかわらず同じである。例えば,System.Int32の大きさは必ず32ビットである。

 ただし,System.IntPtr(C言語のint*に相当)はプラットフォームによって異なる。COMオブジェクトを呼び出す処理や,PInvoke(Platform Invocation Services=OSのAPI呼び出し)を利用しているアプリケーションなどは,そのままではどちらか一方のプラットフォームでしか動作しない。このような場合に備えて,ターゲットとするプラットフォームを限定することもできる。

 なお,9月7日から横浜で開催されるTech・Ed 2004 Yokohamaでは,64ビット開発に関するセッションが用意される予定である。参加者には,Visual Studio 2005の日本語ベータ版が配布される。

(山口 哲弘=日経Windowsプロ