Windows Mobile 5.0を載せたPHS端末「W-ZERO3」が人気を集めているようだ(図1)。VGAの画面,ペン入力だけでなくキーボード入力も可能な点,PHS通信と無線LANに対応していることなどがその理由だろう。


図1●電話と無線LAN機能を備えたW-ZERO3

 W-ZERO3は.NET Compact Framework 1.0 SP3を標準で備えており,同2.0もインストール可能である。これらの環境を利用すれば,Visual Studioを使ってWindowsアプリケーションを開発するのと同じスキルでプログラム開発が可能だ。まずは,開発環境を整えよう。
 W-ZERO3向けのネイティブ・コードも開発可能だが,ここではC#などの.NET対応言語を利用し,いわゆるマネージ・コードのプログラミングを対象とする。その場合,プラットフォームとして,W-ZERO3が標準装備している.NET Compact Framework 1.0 SP3または,.NET Compact Framework 2.0のどちらかを選ぶことになる。

 .NET Compact Framework 1.0 SP3向けに開発すれば,作ったプログラムだけを配布すれば済む。開発環境としては,Visual Studio .NET 2003が必要だ。

 それに対して.NET Compact Framework 2.0向けに開発すると,作ったプログラムに加えて.NET Compact Framework 2.0のランタイムを配布する必要がある。ただ,開発環境には,最新版のVisual Studio 2005が利用可能だ。.NET Compact Framework 2.0には,.NET Compact Framework 1.0に比べてGUIやXML用のクラス(コントロール)が追加されている。しかも開発環境の操作性はVisual Studio 2005の方が優れている。ここでは.NET Compact Framework 2.0をターゲットとする。

SDKとエミュレータを入手

 まず開発環境として,Visual Studio 2005 Standard Edition以上が必要である。無償で配布されている同Express Editionでは開発できないので注意が必要である。

 Visual Studio 2005には,「Pocket PC 2003」や「Smartphone 2003」といったモバイル・デバイス向けのプロジェクト・テンプレートやエミュレータが標準で付属する。だがWindows Mobile 5.0向けは,出荷時期の関係で,含まれていない。MicrosoftのWebサイトからダウンロードし(無償),インストールする必要がある。

 必要なのは,次の3つである。SDKは英語版だけしか用意されていないが,日本語版WindowsとVisual Studio 2005日本語版の組み合わせにインストールしても問題ない。

(1)ActiveSync 4.1(日本語版)
(2)Windows Mobile 5.0 SDK for Pocket PC(英語版)
(3)Windows Mobile 5.0 Pocket PC Emulator Images(日本語版)

 なお,SDKとエミュレータは,「Windows Mobile 5.0 Pocket PC」用を入手することを間違えないように注意が必要である。ほかに「Windows Mobile 5.0 Smartphone」向けもあるが,W-ZERO3に載っているOSはWindows Mobile 5.0 Smartphoneではない。電話機能は,独自に作り込まれたものである。そのため,例えば.NET Compact Framework 2.0には電話をかけるためのクラスが用意されているが,W-ZERO3では動作しない。

 また,初期のW-ZERO3には,ActiveSync 4.0が付属しているものがあった。その場合は,ActiveSync 4.1にバージョンアップしておく。

開発環境をインストール

 SDKとエミュレータを入手できたら,開発環境をインストールする。インストールする順序は次の通りだ。

(1)Visual Studio 2005
(2)ActiveSync 4.1
(3)Windows Mobile 5.0 Pocket PC SDK
(4)Windows Mobile 5.0 Emulator Images for Pocket PC

 すべてのインストールが完了すると,Visual Studio 2005の「新しいプロジェクト」の「スマートデバイス」項目に「Windows Mobile 5.0 Pocket PC」が出てくる(図2)。いくつかのテンプレートがあるが,「デバイスアプリケーション」が.NET Compact Framework 2.0向けのGUIアプリケーション開発用,「デバイスアプリケーション(1.0)」が.NET Compact Framework 1.0向けのGUIアプリケーション開発用である。


図2●「スマートデバイス」項目に「Windows Mobile 5.0 Pocket PC」が表示される
[画像のクリックで拡大表示]

 「デバイスアプリケーション」を選択すると,画面にPocket PCをかたどったフォームのデザイン画面が表示される(図3)。標準でQVGA(320×240ドット)向けだが,フォームのFormFactorプロパティを変更することによって,解像度を変えられる。


図3●Windows Mobile 5.0 Pocket PC向けGUIアプリケーションのフォーム・デザイナ画面
[画像のクリックで拡大表示]

 W-ZERO3はVGAの画面を備えているので,FormFactorプロパティを「Windows Mobile 5.0 Pocket PC VGA」に変更すると,VGA画面のフォームになる(図4)。ここに,ツールボックスにあるコントロールを配置して,ユーザー・インターフェースを作る。ユーザー・インターフェースが作れたらコードを記述して,プログラムを作っていく。


図4●VGAの画面を備えるWindows Mobile 5.0 Pocket PC向けGUIアプリケーションのフォーム・デザイナ画面
[画像のクリックで拡大表示]

 プログラムの配布やデバッグについては今後紹介する予定である。