連載
» 2008年03月17日 00時00分 UPDATE

ココが変わったWindows Embedded CE 6.0 R2(3):Windows Embedded CEアプリケーション開発手法 (4/4)

[宮島剛/松井俊訓(富士通ソフトウェアテクノロジーズ),@IT MONOist]
前のページへ 1|2|3|4       

Visual Studioスマートデバイスアプリケーション(C#)

 最後にデバイスに依存しないマネージドコード(C#)を利用した、Visual Studio スマートデバイスアプリケーションプロジェクトの作成手順を説明します。

 先ほど作成したSDK(EmulatorSDK)をインストールした環境で、Visual Studio 2005のメニューから[新しいプロジェクト]を選択します。

 「プロジェクトの種類」ツリーでは、「他の言語」−「Visual C#」−「スマート デバイス」を選択します。テンプレートについては、「デバイス アプリケーション」を選択して、[OK]ボタンをクリックします(画面21)。


デバイス アプリケーションを選択 画面21 デバイス アプリケーションを選択

 プロジェクトが作成されると、[ソリューション エクスプローラ]にスクリプトファイルやデフォルトのWindowsフォームが登録されます。作成した初期状態では、Windowsフォームの「FormFactor」にPocket PC 2003が設定されており(画面22)、Pocket PC 2003のデバイスを模したスキンが画面中央に表示されます(画面23)。

FormFactorに「Pocket PC 2003」が設定されている 画面22 FormFactorに「Pocket PC 2003」が設定されている
画面中央にPocket PC 2003のスキンが表示されている 画面23 画面中央にPocket PC 2003のスキンが表示されている

 今回は、先ほど作成したSDK(EmulatorSDK)上で開発を行うため、ターゲットのプラットフォームを変更する必要があります。

 ターゲットのプラットフォームを変更するには、Visual Studio 2005のメニューから[プロジェクト]−[ターゲット プラットフォームの変更]を選択して、[ターゲット プラットフォームの変更]ダイアログで「現在のプラットフォーム」を「Pocket PC 2003」から「EmulatorSDK」へ変更します(画面24)。

[ターゲット プラットフォームの変更]ダイアログ 画面24 [ターゲット プラットフォームの変更]ダイアログ

 ターゲットプラットフォームを変更すると、自動的にプロジェクトの再読み込み処理が実行されます。変更したプロジェクトのWindowsフォームのプロパティを確認すると、「FormFactor」が「EmulatorSDK」に変更されていることが分かります(画面25)。

FormFactorに「EmulatorSDK」が設定された様子 画面25 FormFactorに「EmulatorSDK」が設定された様子

 ツールボックスから「Label」を選択して、「Hello world」テキストデータを追加したものを画面26に示します。

「Hello world」テキストデータを追加した様子 画面26 「Hello world」テキストデータを追加した様子

 アプリケーションとして必要な機能を実装して、ビルドを行い、Visual Studio 2005のメニューから[デバッグ]−[デバッグ開始]を選択すると、アプリケーションを配置する場所を選択するダイアログが表示されます(画面27)。

アプリケーションを配置する場所を選択 画面27 アプリケーションを配置する場所を選択

 ここでアプリケーションの配置を実行すると、作成したアプリケーションがエミュレータ上で動作します(画面28)。

作成したアプリケーションがエミュレータ上で動作している様子 画面28 作成したアプリケーションがエミュレータ上で動作している様子

 以上のように、SDKを利用することで通常のアプリケーション開発と同等の流れでWindows Embedded CEに対応したアプリケーションの開発を行うことが可能となります。また、エミュレータや比較的入手しやすいx86デバイスを利用することで、個々の開発環境でのデバッグが可能となり、“OS+デバイス開発”と“アプリケーション開発”を並行して進めることができます。

 ただし、アプリケーションの並行開発を実施する場合には、次の点に注意してください(表2)。

注意点 対処方法
CE 6.0(CE 6.0 R2を含む)標準のエミュレータはARMベースである 実際のデバイスのアーキテクチャを意識して開発する。可能であれば、実際のデバイスと同じアーキテクチャを利用した評価ボードで開発すること
アプリケーションが利用するライブラリとOSの構成に不整合が発生する可能性がある 頻繁にOSの構成を変更している場合は注意が必要。定期的に確認して最新のSDKを利用すること
ハードウェアに依存したドライバへのアクセスがある StubドライバをOSに組み込むことで対処する
例:DeviceIoControlでコールされた要求に対応したダミーのデータを返すStubドライバを組み込むなど
表2 アプリケーションの並行開発時に注意すべきポイント



 今回、3種類のアプリケーションプロジェクトについて解説しました。OS上で動作を確認するような簡単なアプリケーションであれば“Platform Builderサブワークスペース”を利用したり、複数の開発者で開発を行う場合やデバイスとの並行開発やマネージドコードを使った開発の場合は“Visual Studio スマートデバイスアプリケーションプロジェクト”を利用したりするなど、作成するアプリケーションや規模によって、最適なアプリケーションプロジェクトを選択することができます。

 これまでの解説を通じて、Windows Embedded CE 6.0 R2で新たに追加された機能や強化されたポイント、その魅力についてご理解いただけたかと思います。また、今回説明したように、CE 6.0(CE 6.0 R2含む)は、Visual Studio 2005を中心とした強力なアプリケーション開発環境に対応しているという点も見逃せません。

 さて、本連載はこれで最終回となります。これまで解説した内容が、CE 6.0 R2やほかの組み込みOSを選択する際のお役に立てれば幸いです。

前のページへ 1|2|3|4       

Copyright© 2018 ITmedia, Inc. All Rights Reserved.