こんにちは。
Windows プラットフォームサポートの頂です。
今回はWindows PE のカスタマイズについてご紹介いたします。
一般的な Windows PE のシナリオとして、Windows のインストールやトラブルシューティング ツールとして利用できますが、Windows PE のカスタマイズをすることで、自分で用意したアプリケーションを起動することや、特定の作業だけを実施させることなどもできます。
ここでは、Windows PE 利用時に、特定のシェルやアプリケーションを起動する方法として、Winpeshl.ini を利用した手順の記述方法をご紹介したいと思います。
まずは Windows PE の起動についてから少しご説明いたします。
カスタマイズされていない (標準構成) Windows PE より起動した場合、OS のカーネルなどが読み込まれ、その後、Winpeshl.exe 、 Startnet.cmd 、Wpeinit.exe の順に起動します。
その起動プロセスが終了すると、コマンド プロンプトが表示された状態になりますが、今回ご紹介する Winpeshl.ini を利用する手順は、上記プロセスの startnet.cmd を実行する前の処理をカスタマイズする方法となります。
具体的には、自分で用意したアプリケーション (シェル) を Windows PE で起動して利用することや、アプリケーションから設定された特定の処理のみ実行することができます。
注意点としては、Winpeshl.ini を利用してカスタマイズすると、Wpeinit.exe が実行されない状態でWindows PE が起動します。
その場合、Plug and Play デバイスのインストールやネットワークの初期化などが行われないため、ご利用用途によっては Wpeinit.exe に対する処理も含める必要があります。
Winpeshl.ini については、以下 Technet サイトでご紹介いたしております。
Winpeshl.ini のリファレンス
http://technet.microsoft.com/ja-jp/library/hh825046.aspx
Winpeshl.ini Reference
http://technet.microsoft.com/EN-US/library/hh825046.aspx
※ こちらは英語でのドキュメントとなります。
[設定について]
上記Technet サイトの情報を基に Winpeshl.ini ファイルの記載例などについてご紹介いたします。
- Winpeshl.ini ファイルの記載例
----------------------
[LaunchApp]
AppPath = %SYSTEMDRIVE%\Fabrikam\shell.exe
[LaunchApps]
%SYSTEMDRIVE%\Fabrikam\app1.exe
%SYSTEMDRIVE%\Fabrikam\app2.exe, /s "C:\Program Files\App3"
----------------------
※ [LauchApps] セクションではアプリケーション名とオプションをカンマ (,) で区切ります。
上記以外のTechnet 文書では、"-option1" など様々な記載例となっていますが、オプションで引数として渡す値については、実際に利用するアプリケーションに合わせて任意の設定を行います。
たとえば、メモ帳を起動してファイルを開くような場合は、カンマの後にファイル パスを入力します。
なお、[LaunchApp] と [LaunchApps] のいずれかのセクションのみでの利用も可能です。
どちらのセクションに記載した場合でも、実行されたコマンド プロンプト ウインドウ または、カスタム シェル アプリケーションを終了すると、Windows PE が再起動します。
以下では、それぞれのセクションについてご説明いたします。
[LaunchApp] セクションについて
--------
[LaunchApp]
AppPath = %SYSTEMDRIVE%\Fabrikam\shell.exe
--------
AppPath エントリに、シェル アプリケーションへのパスを設定します。
完全修飾パスまたは環境変数 (%SYSTEMROOT%\System32\Myshell.exe など) を指定できます。
LaunchApp はコマンド ライン オプションをサポートしません。
LaunchApp は 1 つのアプリケーションのみ実行できます。
250 文字を超えるコマンドは指定できません。
[LaunchApps] セクションについて
----------------------
[LaunchApps]
%SYSTEMDRIVE%\Fabrikam\app1.exe
%SYSTEMDRIVE%\Fabrikam\app2.exe, /s "C:\Program Files\App3"
----------------------
アプリケーションでコマンドライン オプションを使用して、実行するには、[LaunchApps] セクションを使用します。
アプリケーションは複数実行可能で、一覧に記載された順に実行されます。
アプリケーション名とオプションをカンマ (,) で区切ります。
250 文字を超えるコマンドは指定できません。
- 参考情報
Windows プレインストール環境 (Windows PE) の概要
http://technet.microsoft.com/ja-jp/library/hh825110.aspx
Windows PE とは
http://technet.microsoft.com/ja-jp/library/dd799308(v=WS.10).aspx
Windows PE の機能
http://technet.microsoft.com/ja-jp/library/dd744556(v=WS.10).aspx