Windows system >> Windowsの知識 >  >> Windows XPシステムチュートリアル >> XPシステムの基本 >> Windows XP Embedded用のカスタムコンポーネントの作成

Windows XP Embedded用のカスタムコンポーネントの作成

  
はじめにMicrosoft Windows XP Embedded用のカスタムコンポーネントを作成する方法はいくつかあります。たとえば、インポートされたデバイスドライバの.infファイルをComponent Designerツールに直接インポートすることができます(これはMicrosoft Windows NT Embedded 4.0に対する大幅な改善です)。 Devices.pmq(Target Analyzer Probe(TAP)またはTarget Analyzer(TA)の出力)をインポートすることでコンポーネントを作成できます。これまでのところすべてうまくいっていますが、カスタムアプリケーションを記述できるコンポーネントをどのように作成しますか。この記事の目的のために、私はTimerShot Windows XP PowerToyを使用するセキュリティアプライアンスを構築することにしました - 接続されたイメージングデバイスから画像をキャプチャしてプリセットの場所に画像を保存する - Iローカルハードドライブ、またはネットワーク共有(この記事の最後にWindows XP PowerToyへのリンクがあります)にあります。 TimerShotは、数秒ごとまたは数分ごとにイメージを取得するように設定できますが、これらすべてはアプリケーション内で設定され、Windows XPレジストリに保存されます。私はまた、私がこの記事のために特別に書いた "PhotoDisplay"と呼ばれる別のアプリケーションを含めるでしょう。 PhotoDisplayを使って、保存されているJPEGファイルを見ることができます。残念ながら、アプリケーション用にWindows XP Embeddedコンポーネントを構築するプロセスを自動化するツールはありません - ある程度の検出作業が必要です。したがって、私はシカハンターを取り除き、友達のワトソンに電話をかけ(ここでは駄目です)、そして仕事を始めます。インストールオプション
Windows XP Embeddedデバイスを構築する際にサードパーティのアプリケーション/テクノロジを追加するためのオプションがいくつかあります。これらのオプションは、主にデバイスのハードウェア構成とデバイスの製造に使用される方法によって異なります。 R /Wメディア(通常はハードドライブ)から起動し、CD-ROM /DVD-ROMドライブ、モニタ、キーボード、およびマウスを含むデバイスを構築するときに最大の柔軟性が得られます。この設定では、組み込みターゲット上でサードパーティのインストーラを直接実行して、アプリケーションをターゲットデバイスに直接コピーして設定することができます。このオプションは、ワンタイムデバイスを構築している場合、またはWindows XP Embeddedでアプリケーションをテストして、必要なすべてのオペレーティングシステムコンポーネントが存在することを確認する場合に便利です(後述)。もう1つの方法は、Windows XP Embeddedイメージ(通常は\\ Windows Embedded Imagesフォルダーに生成されます)を生成し、必要なアプリケーション/リソースを手動でbuildフォルダーに追加することです。 Windows XP Embeddedオペレーティングシステムイメージ(およびアプリケーション/リソース)をブータブルメディアにコピーしてから、アプリケーションをテストできます。これは、COMオブジェクトの登録や基盤となるオペレーティングシステムサービスのインストールを必要としない単純なアプリケーションにのみ適用されます。最善の方法は、Target Designer内で使用でき、他のWindows XP Embeddedコンポーネントと同じように選択できるコンポーネントを作成することです。マルチユーザーの状況でWindows XP Embeddedツールを既にインストールしている場合、これは理想的な選択肢です。ただし、これにはいくつかの作業が必要です。アプリケーションのインストール方法と、オペレーティングシステムのどの部分が通常変更されるのかを分析しましょう。インストーラは、単純なxcopy、IExpress、または登録情報の入力を要求し、複数のCD /DVDを発行することができるGUIインストーラとして、さまざまな形式とサイズで入手できます。インストーラは、データベースエンジンまたはオペレーティングシステムのサービス、デバイスドライバ、またはサポートDLLをインストールし、オペレーティングシステムのレジストリまたはINIファイルを変更することがあります。場合によっては、インストールされたファイルが複数のPCにインストールされます。フォルダ内:コアアプリケーション用のProgram Files、デバイスドライバ用の "\\ Windows \\ System32"、またはインストーラに応じたその他のフォルダ。 Windows XP Embeddedコンポーネントに何を含めるべきかを判断するためには、一見普通の仕事のようには見えません。良いニュースは、あなたを助けるためのツールとテクニックがあるということです。次のセクションでは、Windows XP Embeddedコンポーネントに含めるファイル/レジストリ設定とオペレーティングシステムコンポーネントを決定するために必要なツールの概要を説明します。 Detective Toolkit
このセクションでは、カスタムWindows XP Embeddedコンポーネントを構築するために必要なツールの概要を説明します。コンポーネントを構築およびテストするときには2セットのツールが必要です。これらのツールの中には開発用PC上で実行されるものもあれば、アプリケーションやコンポーネントをデバッグするための他のツールがターゲットデバイスに含まれるものもあります。これらのツールを上記の2つのカテゴリに分類してから、各ツールの使用方法を調べてみましょう。開発中のPCで使用されるツール
アプリケーションのインストーラの動作を変更することはできませんが、アプリケーションのインストール後に発生した変更を判断するためにオペレーティングシステムを監視することができます。このプロセスを支援するために使用できるツールはたくさんあります。一部のインストーラはインストールプロセス中に再起動を必要とするため、再起動後にPCのファイルシステムとレジストリへの変更を監視できるツールを使用するのが理想的です。 Inctrl5(ZDNet)やSysDiff(Microsoft)などのアプリケーションは、アプリケーションをインストールする前にファイルシステムとレジストリのスナップショットを作成し、インストール後にファイルシステムとレジストリのスナップショットを作成し、両者の違いを提供します。レポート - コンポーネントに含めるファイルを決定するのに役立ちます。アプリケーションのインストール時にすでに実行されているアプリケーションとサービスもファイルシステムとレジストリに変更を加えることがあります。以下は、開発用PCでカスタムコンポーネントに含めるファイル/レジストリエントリを決定するために使用したツールの一覧です。各ツールについては、この記事の後半で説明するプロセスの手順を通じて説明します。使い方•InCtrl5 - ファイルシステムとレジストリのスナップショットを作成し、相違点のリストを提供します(ZDNet)。•Dumpbin - アプリケーション/DLLによって使用されるDLLを決定するために使用されます(Microsoft Visual Studio .NET)•依存 - 決定するためにも使用できます。アプリケーションで使用されるDLL(およびAPI)•RegMon - レジストリへの変更を動的に監視します(NTシステム内部)。•FileMon - NTシステム内部•Windows XP Embedded開発ツール - Target Analyzer Probe。 Component Designer、Component Database Manager、Target Designerターゲットデバイスで使用するツール
上記のツールを使用して必要なファイルとレジストリキーを特定することは、パズルの一部にすぎません。 Windows XP Embeddedイメージが生成された後、アプリケーションが期待どおりに動作することを確認するためにアプリケーションをテストする必要もあります。アプリケーションがDLLを動的にロードしたりCOMオブジェクトのインスタンスを作成したりすることは可能ですが、DumpbinまたはDependsを使用してキャプチャすることはできません。したがって、ターゲットデバイスにはいくつかのデバッグツールが必要です。以下は、ターゲットデバイスで使用されているツールの一覧です(これらのツールは、最終的なオペレーティングシステムイメージを展開する前に削除する必要があります)。 •RegMon - レジストリへの変更を動的に監視する(NT System Internals)•FileMon - NT System Internals次のセクションでは、これらのツールの使用方法について説明します。概要
プロセスの概要最初に、セキュリティデバイスを要約し、利用可能なコンポーネントをリストしましょう。私たちの計画は、Windows XP Embeddedに基づいてセキュリティデバイスを生成することです。この例では、私の目標としてLogicool USBカメラとWindows XP Embedded TimerShot PowerToy(このコンポーネントのダウンロード場所については、この記事の最後にあるリンクを参照)を使用して、開発用PCとしてToshiba Tecra 9000ラップトップを使用します。前述の探偵キットを準備して使用します。東芝のラップトップは2つのハードディスクパーティションを持っています。プライマリパーティションには、Windows XP Professionalと私の開発ツール(Windows XP Embedded、Visual Studio .NETなど)がすべて含まれており、NTFSとしてフォーマットされています。私はまた700MBの二次パーティション(ディスクとほぼ同じサイズ)を持ち、FAT32としてフォーマットされています。 BOOT.INIを変更しました(Windows XP Embedded用のセカンダリブートオプションを追加するためにブータブルドライブのルートにあります - Boot.iniはSystemとHiddenプロパティを持つように設定されています) - Boot.ini [ブートローダー]タイムアウト= 30デフォルト= multi(0)disk(0)rdisk(0)partition(1)\\ Windows [オペレーティングシステム] multi(0)disk(0)rdisk(0)partition(1) )\\ WINDOWS = "Microsoft Windows XP Professional" /fastdetect multi(0)disk(0)rdisk(0)partition(2)\\ WINDOWS = "Microsoft Windows XP Embedded" /fastdetect起動時に、2つの選択肢がありました。 Windows XP Professional(プライマリパーティション)から起動するか、Windows XP Embeddedイメージ(セカンダリパーティション)から起動します。 30秒のタイムアウト後、デフォルトのオプションはWindows XP Professionalを起動することです。手順1 - インストーラから情報を取得するカスタムコンポーネントを作成する最初の手順は、アプリケーションに必要なファイルとレジストリの設定を決定することです。インストーラと探偵ツールは、Windows XP Professionalで動くはずです。完全に構成されたオペレーティングシステムイメージに対してアプリケーションを実行してテストできます。この記事では、後でWindows XP Embedded用のアプリケーションをテストします。 Windows XP PowerToys WebサイトにPowerToysがいくつか一覧表示されているので、適切なリンクをクリックしてPowerToyをダウンロードすると、[開く]、[保存]、[キャンセル]、または[詳細]を選択するように求められます。 [保存]をクリックしてTimershotPowertoySetup.exeプログラムをハードドライブに保存します。 「開く」を選択すると、PowerToyがダウンロードされインストールされます。この時点では、インストールプロセス中に情報を取得する必要はありません。ファイルシステムとレジストリスナップショットツールも必要になります。この記事の目的のために、私はZDNetのInctrl5を使用することにしました、しかし多くの同様のツールが利用可能です。次はInctrl5の外観です。インストーラの場所が挿入され(私の例ではc:\\ stuff \\ XP-PowerToys \\ TimershotPowertoySetup.exe)、レポートの出力場所が私のインストールフォルダを指すように変更されます。 GO!。図1. InCtrl5は私の開発用PCのレジストリとファイルシステムのスナップショットをキャプチャし、PowerToyインストーラを起動します。インストールプロセスが完了したら、2番目のスナップショットが作成され、レポートが生成されます。コンパイルされたレポートには、ファイルシステム、レジストリ、INIファイル、およびテキストファイル(autoexec.ntおよびconfig.nt)に加えられたすべての変更が一覧表示されます - PowerToyインストールの場合、このレポートはPowerToyのインストール時に含まれます。
Copyright © Windowsの知識 All Rights Reserved