PDAやPocket PC等のモバイル端末に対するアプリケーションを開発する場合、実機がなくても動作を確認したい。
開発者全員に実機が提供されることはなく、順番で利用することになることが多い。
そんな時には、Windows Mobileのエミュレータを利用すると、順番待ちの時間が短縮できる。
エミュレータは、補助的な役割であり、実機そのものでの動作確認をしなくて良いというものではない点に注意すること!

以下、Windows Mobile 6.0のエミュレータを適用する手順。
【用意するもの】
1.Microsoft .NET Compact Framework 2.0 SP1以降
 →NET Compact Framework 2.0 SP2 再頒布可能パッケージ
2.Windows Mobile 6.0 SDK Standard and Professional
 →Windows Mobile 6 SDK Refresh
  開発対象となるWindows MobileのエディションのSDKをダウンロードする。
3.Windows Mobile 6 Localized Emulator Images
 →Windows Mobile 6 Localized Emulator Images
  以下のどちらかをダウンロードする。
  (エミュレートしたいエディションのイメージをダウンロードする)
   0411\Windows Mobile 6 Professional Images (JPN).msi
   0411\Windows Mobile 6 Standard Images (JPN).msi
4.Virtual PC 2007
 →Virtual PC 2007 - 日本語
  ネットワークドライバの「Virtual Machine Network Driver for Microsoft Device Emulator」を利用するために必要。
  これがないと、ネットワークに接続できない。
5.Visual Studio 2005
 →エミュレータを実行するために必要。
  ※Professional Edition以上であれば、確実に動作する模様。
  (Standard EditionとExpress Editionでは試していないため、動作するかは不明)
6.モバイル端末とエミュレータの内容を同期するアプリケーション
 →OSによって、以下のどちらかをダウンロードするが公開されている。
  《XP以前の場合》
   ・ActiveSync 4.5 - 日本語
  《Vistaの場合》
   ・Microsoft Windows Mobile Device Center 6 for Windows Vista (32-bit)
 ※Vistaの場合は、ActiveSyncの後継に当たるWindows Mobile Device Centerを利用することになる。

以降、Visual Studio 2005は、既にインストールされている前提で話を進める。

【インストール手順】
1.Virtual PCをインストールする。
 1)【用意するもの】のリンクからダウンロードする。
 2)ウィザードに従って、インストールする。
2.Microsoft .NET Compact Framework 2.0 SP2をインストールする。
 1)【用意するもの】のリンクからダウンロードする。
 2)ウィザードに従って、インストールする。
3.コマンドプロンプトを起動し、以下のコマンドを実行する。
 1)[スタート]-[プログラム]-[アクセサリ]-[コマンドプロンプト]を選択する。
 2)以下のコマンドを入力する。
  regsvr32 %SystemRoot%\system32\vbscript.dll
 ※この作業は、管理者権限で行う必要がある。
  Vistaの場合には、コマンドプロンプトを管理者権限で実行すること!
  尚、この作業を行っていないと、SDKのインストールでエラーが発生する。

4.同期用アプリケーションをインストールする。
 1)【用意するもの】のリンクからダウンロードする。
  ※OSによって、ダウンロードするものが違うため、注意!
 2)ウィザードに従って、インストールする。
5.Windows Mobile 6.0 SDKをインストールする。
 1)【用意するもの】のリンクからダウンロードする。
 2)ウィザードに従って、インストールする。
  ※途中で「.NET Compact Framework 2.0 SP1」がインストールされていないと警告が表示される。
6.Windows Mobile 6 Localized Emulator Imagesをインストールする。
 1)【用意するもの】のリンクからダウンロードする。
 2)ウィザードに従って、インストールする。

【エミュレータの設定】
1.Visual Studio 2005を起動する。
2.デバイス エミュレータ マネージャを起動する。
 メニューバーの[ツール]-[デバイス エミュレータ マネージャ]を選択する。
3.Windows Mobile 6.0 SDKの設定を行う。
 1)ツリーを展開する。
  [データストア]-[Windows Mobile 6.0 Pocket PC SDK]
 2)設定を行うエミュレータを選択して、右クリックする。
  Professionalの場合、[JPN Windows Mobile 6.0 Pocket PC Emulator]
 3)表示されたメニューから[Connect]を選択する。
  →エミュレータが起動する。
4.エミュレータの構成を設定する。
 ウィンドウのメニューバーの[File]-[Configure]を選択する。
5.エミュレータで利用するフォルダを設定する。
 [General]タブを選択し、[Shared folder]を指定する。
 →PCとエミュレータ間のファイル共有に利用する。
6.ネットワークアダプタを設定する。
 1)[Network]タブを選択する。
 2)「Enable NE2000 PCMCIA network adapter and bind to:」にチェックを付ける。
 3)一覧からネットワークアダプタを選択する。
  PCに搭載されているネットワークアダプタを選択した。
 4)[OK]ボタンを押す。
7.エミュレータのハードウェアをリセットする。
 ウィンドウのメニューバーの[File]-[Reset]-[Hard]を選択する。
 ※再起動されるまで待つ。
8.ネットワーク設定を行う。
 1)エミュレータの[スタート]メニューから[設定]を選択する。
 2)画面下から[接続]タブを選択し、[ネットワークカード]を実行する。
 3)以下のようにネットワークアダプタの構成を設定する。
  a.ネットワークカードの接続先
   →インターネット接続
  b.アダプタをタップして設定を変更します
   →NE2000 互換イーサネット ドライバ
  →NE2000 互換イーサネット ドライバの設定画面が表示される。
 4)[IPアドレス]タブを選択する。
  各自の環境に合わせて、IPアドレスを設定する。
 5)[ネームサーバー]タブを選択する。
  各自の環境に合わせて、DNSとWINSを設定する。
 6)設定が完了したら、画面右上の[OK]ボタンを押す。
  →ダイアログが表示されるので、[OK]ボタンを押す。
 7)一つ前の画面に戻るので、画面右上の[OK]ボタンを押す。
 8)一つ前の画面に戻るので、右上の[×]ボタンを押す。
 →ここまでで設定が完了する。
9.動作確認を行う。
 1)エミュレータの[スタート]メニューから[Internet Explorer]を選択する。
 2)[お気に入り]から適当なリンクをクリックする。
 3)インターネットに接続できるかどうかを確認する。
  →接続に失敗した場合には、ネットワークの設定を見直す必要がある。
  ※プロキシを設定している場合は、プロキシ設定も行う必要がある。
10.エミュレータを閉じる。
 ウィンドウの[×]ボタンを押して閉じる。
 →終了時にエミュレータの設定を保存するか確認するダイアログが表示される。
  ※必ず、エミュレータの状態は保存すること!
  保存しないと設定が全て消えてしまう。
  次回起動時に設定を最初からやり直すことになるので面倒…

【補足事項】
・Windows Mobileに標準インストールされている機能はすべて利用できる。
 →Office Mobileも利用可能。
・キーボードからの入力は、全てかな変換された状態となる。
 →入力設定を確認してみたが、英数字の直接入力は指定できないみたい…
・共有フォルダは、以下の手順で確認できる。
 1)エミュレータの[スタート]メニューを選択する。
 2)[プログラム]-[ファイルエクスプローラ]を実行する。
 3)[マイデバイス]-[Strage Card]を選択する。
  →これで、共有フォルダが閲覧できる。
・Webアプリケーションを作成した場合には、ブラウザに対応しているかどうかの確認に利用できる。
・Virtual PCについては、以前の記事「【仮想化技術】無料で使える仮想化ソフト 」を参照。

【参考サイト】
Zandoná Mobile WM 6 SDK Install Issue: Common7\IDE\ProjectTemplates?
PC上でW-ZERO3など「Windows Mobile端末」のエミュレータを動かす方法