Windows XP Embedded開発入門

Windows XP Embedded開発入門 最終回

XP Embedded開発ツール群を使いこなそう

奥村 正明(Microsoft MVP - Windows Embedded)/ 監修:杉本 拓也(Microsoft MVP - Windows Embedded) 株式会社富士通ソフトウェアテクノロジーズ 2007/2/13

- PR -

XP Embedded開発をサポートする有用ツール群

Dependency Walkerによる依存関係チェック

 「Dependency Walker」は、アプリケーションの依存関係を調査するためのツールです()。

注:Visual Studio Toolとして提供されています。

 XP Embedded OSランタイムイメージを構築し、その上で実際にアプリケーションを実行させたら動作しない、ということがあります。こうした場合はDependency Walkerで必要なDLLがOSランタイムイメージに組み込まれているか否かを確認します。

画面4 Dependency Walker実行画面(画像をクリックすると拡大します)

 画面4は、実際にOSランタイムイメージ上でDependency Walkerを実行した様子です。足りないファイルとして、MFC80U.DLLとMSVCR80.DLL()が表示されています。OSランタイムイメージに足りないDLLが分かったら、Component Database Manager、Target Designerからファイル名をキーとして該当コンポーネントを探し、OSイメージに組み込むことでアプリケーションが動作する環境を整えることができます。

注:画面4のMFVCR80.DLLなどはVisual Studio 2005で開発したアプリケーションが必要とするもので、XP Embedded Component Databaseでは提供されていません。Visual Studio 2005で開発したアプリケーションは、FBA中でVisual C++ 2005再配布可能パッケージ(vcredist.exe)を/Qオプション付きで起動させれば実行可能になります。

Registry Monitorによるレジストリアクセスモニタリング

 「Registry Monitor」は、特定期間に発生したレジストリアクセスをモニタリングするツールです。

画面5 Registry Monitorの画面(画像をクリックすると拡大します)

 例えば、

OSランタイムイメージのデスクトップの背景を黒にする

ことを実現する場合を考えてみましょう。

 まず、Windows XP Professional上でRegistry Monitorを起動し、画面のプロパティでデスクトップの背景を黒にする操作によるレジストリアクセスをモニタリングします。モニタリングした情報は、テキストファイルで保存します。このファイルを「setvalue」という文字列で検索することにより、背景を黒にする際にレジストリに書き込まれたデータを特定できます。

 レジストリ情報を取得したら、Target DesignerやComponent DesignerでOSランタイムイメージのレジストリ情報を設定します。これで、デスクトップの背景が黒に設定されたOSランタイムイメージを構築できます。

画面6 デスクトップの背景を黒に設定した際のレジストリ情報(画像をクリックすると拡大します)

File Monitorによるファイルアクセスモニタリング

 「File Monitor」は、特定期間に発生したファイルアクセスをモニタリングするツールで、使用方法は基本的にRegistry Monitorと同じです。

 例えば、EWF RAM Modeを利用したOSランタイムイメージにおいて、メモリを圧迫する要因がある(ディスクに対する書き込み動作が発生している)といった現象の調査などに用います。

InCtrl5によるインストーラ解析

 「InCtrl5」は、EXE形式インストーラのインストールシーケンスを解析するツールです。インストーラの動作やファイルおよびレジストリの追加・削除・変更といった情報の取得が可能です。InCtrl5で取得した情報は、HTML形式で出力されます。

画面7 InCtrl5の画面

 InCtrl5は、サードパーティアプリケーションのインストールシーケンス解析などに利用します。ドライバの中にはINFファイルではなくインストーラで提供されているものもあり、INFファイルからコンポーネントを作成できない場合があります。InCtrl5でインストールシーケンスを解析することにより、インストーラがコピーを行っているINFファイルの情報を取得してコンポーネントを作成することが可能です

画面8 InCtrl5によるインストールシーケンスの解析結果(画像をクリックすると拡大します)

 XP EmbeddedのベースはWindows XP Professionalであり、アプリケーションの開発に際してVisual Studioを利用したり、既存の開発物を流用したりすることが可能です。これはOSイメージの作成にも当てはまります。レジストリの設定や異常発生時の解析手法など、Windows XP Professionalの知識が生かせます。

 XP Embeddedの開発に関する文献は残念ながら少ないですが、Windows XP Professionalのトラブルシュート方法はさまざまな場所から取得できます。XP Embeddedの開発で行き詰まった際は、ヘルプやWindows XP Professionalの情報、そして今回紹介したツールなどを活用ください。

スキルアップ/キャリアアップ(JOB@IT)

スポンサーからのお知らせ

- PR -
@IT Sepcial

@IT MONOist 求人情報

- PR -