Windows CE (.NET) とか IoTとか

組込みWindows と IoTの話を扱います

Visual Studio .NET 2005でのSmart Device開発 (その1)

MSDN Subscriber download から Visual Studio .NET 2005 Professionalをダウンロードしてきて、インストールしてみました。

Visual Studio .NET 2005 (以降 VS.NET 2005と略しますね)は Windows Mobile / Windows Embedded - CEもフルカバーする新しい開発ツールです。すでにWindows Mobile 5.0向け開発はVS.NET 2005でしかできないことになっています。(VS.NET 2005はWM2003/SEもカバーします。)

一方、WM5.0以前からリリースされているWindows CE 5.0用のアプリケーション開発にも使えるはず!ということで検証してみました。

=============================

現在、VS.NET 2005関連のヘルプドキュメントは

msdn2.microsoft.comで公開されています。この中の Smart Device Development の項目を読んで見ましょう。ここでいっている"Smart Device Development"には

- C#VB.NETによるManagedコード開発

- C++によるNativeコード開発

が説明されています。そうです、"eVC is Dead!"なのです。ここで問題になるのは、PB5.0で作成したSDKはどうなるのか、またエミュレータ開発はどうなるのか、ということですね。

まずSDKですが、PB5.0でエクスポートしたSDKはそのままVS.NET 2005で使用可能です。ところが、SDKに含まれる(事もある)x86エミュレータイメージはVS.NET 2005では直接にはサポートされていません。VS.NET 2005でサポートされるのはARMエミュレータ向けのCEイメージのみで、現在のPB5.0で作成したx86エミュレータイメージはサポートされていないのです。

また、VS.NET 2005ではこれまで使われ続けてきたPlatform Managerを使用しません。その代わり以下のデバッグ接続方法がサポートされています。

- USB Connection - ActiveSync 4.x

- Bluetooth Connection - ActiveSync 4.x

- IrDA Connection - ActiveSync 4.x

- Serial Connection

- ARM Emulator - DMA driver

- Wired and Wireless Ethernet- TCP/IP

結局、大きく分けてActiveSyncとARM Emulator、それにTCP/IPということになります。最後のTCP/IPを使うと、これまでのx86エミュレータイメージで無理やりデバッグすることはできそうな雰囲気です。

一方、VS.NET 2005をインストールするとこれまでのリモートツールがスタートメニューに登録されますが、これらはこれまでどおりPlatform Managerを使います。(ActiveSync接続だとこれまでとまったく同じですね。)

VS.NET 2005を普通にインストールするとデスクトップ向け.NET Framework v2.0 SDKやPlatform SDKの主要部分(DirectX SDKはインストールされませんでした)がインストールされますが、.NET Compact Framework v2.0のインストール用.msiファイルもコピーされます。これは以下の手順でインストールすることができます。

How to: Install the .NET Compact Framework

http://msdn2.microsoft.com/en-us/library/ms172491(en-US,VS.80).aspx

また、Help ドキュメントには C++C#VB.NET以外にもPlatform Builder 5.0ドキュメントも付いてくるようです。