次の方法で共有


レジストリを設定する

OAL の調整が終了したら、プラットフォームのシステム レジストリを設定することができます。Windows CE のロードが始まると、カーネルはファイル システムを起動し、HKEY_LOCAL_MACHINE\Init レジストリ キーを調べて実行するアプリケーションを確認します。OS がロードするアプリケーションはユーザーが決定しますが、ほとんどのプラットフォームでは次のアプリケーションを含めます。

  • デバッグ シェル (Shell.exe)

    Shell.exe は、開発用のワークステーションで実行されている Eshell.exe または Cesh.exe アプリケーションと通信します。デバッグおよび開発に使用する OS イメージには、Shell.exe のみを含めてください。Shell.exe は、ユーザーが Eshell.exe または Cesh.exe を使用して Windows CE イメージを転送した後、コマンド プロンプト ビルド ウィンドウに Windows CE プロンプトを表示します。

  • デバイス マネージャ (Device.exe)

  • グラフィック、ウィンドウおよびイベントのサブシステム (Gwes.exe)

    Gwes.exe はまた、キーボード ドライバなどの入力デバイス ドライバをロードして初期化します。

  • タスク マネージャ (Taskman.exe)

システムの起動時にどのアプリケーションを実行させるかを制御するには、起動レジストリ値を作成します。起動レジストリ値はレジストリに格納する必要はありません。ただし、依存関係を指定することはでき、32 個のアプリケーションまで指定できます。次の表は、HKEY_LOCAL_MACHINE\Init キーのエントリの一覧です。

エントリ名
Launchnn program.exe REG_SZ
Dependnn hex:xx,yy[,xx,yy] REG_BINARY (yy は、最も重要なビットです。)

起動レジストリ値は、Dependnn レジストリ値によって示される、オプションの依存関係を持っています。Dependnn レジストリ値は、Launchnn アプリケーションが実行される前に Windows CE で実行されている必要があるアプリケーションを示しています。Dependnn レジストリ値は、キーワード Depend で始まり、その後に Launchnn レジストリ値と同じ 10 進数の数が続きます。Dependnn レジストリ値は、Windows CE がアプリケーションを起動する順番を定義します。Dependnn 値ごとに、1 つまたは複数の依存アプリケーションを指定できます。依存アプリケーションは、16 進数の一連の文字で指定されます。次のコード サンプルは、依存関係を使用した、通常の Init レジストリ エントリを示しています。

  [HKEY_LOCAL_MACHINE\Init]
  "Launch10"="shell.exe"
  "Launch20"="device.exe"
  "Launch30"="gwes.exe"
  "Depend30"=hex:14,00
  "Launch50"="taskman.exe"
  "Depend50"=hex:14,00, 1e,00

このサンプルでは、Gwes.exe は Device.exe の起動に依存し、Taskman.exe は Device.exe および Gwes.exe の起動に依存しています。

Windows CE が Init レジストリ値を使用してアプリケーションを呼び出した後、そのアプリケーションは SignalStarted 関数を呼び出す必要があります。SignalStarted は、アプリケーションで、残りの OS が処理を続行するための準備ができたことを示します。SignalStarted にパラメータとして渡される値は、Init キーから開始されたアプリケーションのコマンド ラインに渡される値です。レジストリの形式の詳細については、「Registry File」を参照してください。既定のレジストリ設定の詳細については、「Default Registry Settings」を参照してください。