Windows PE 3.0にアプリケーションを組み込む
Windows PE 3.0は最小構成のため、多くのコマンドが組み込まれず、簡略化された環境です。そのため、同環境を使いこなす、もしくは利便性を高めるにはユーザーが独自にアプリケーションを組み込んでいかなければなりません。最近では、Windows PE環境への組み込みをサポートした市販のバックアップツールも存在しますが、大抵は自身の手によって組み込む必要があります。
例えば普段から使っているコマンド「foo.exe」を、Windows PE 3.0環境でも使用したい場合、「{作業フォルダ}\mount\Windows」フォルダにコピーします。もちろん「Program Files」フォルダにコピーしても問題ありませんが、Windows PE 3.0の環境変数PATHでは、「X:\Windows\System32;X:\Windows」となっているため、コマンドプロンプトから直接起動するには、WindowsもしくはWindows\System32フォルダにコピーした方がスマートなのです。
一方、アプリケーションを組み込む場合、実行ファイルだけでなく各種設定ファイルやシステムファイルもコピーしなくてはなりません。こちらの手順は煩雑ですので、メジャーなテキストエディタ「秀丸」を例に、アプリケーションをWindows PE 3.0環境に組み込む手順を紹介します。
さて、これまでの手順と同じように、Windows PEイメージファイル(boot.wim)をマウントしてから、普段お使いの秀丸を作業フォルダにコピーします。通常は「%ProgramFiles%\Hidemaru」フォルダをそのまま作業フォルダの「mount\Program Files」フォルダにコピーしてください(図19)。
続いて秀丸から設定内容をレジストリファイルに出力します。こちらは秀丸固有の操作方法ですので、特段説明することはありませんが、背景色が標準状態と異なるなど、筆者が行ったカスタマイズが施されていることを覚えておいてください(図20~23)。
図21 ダイアログが起動したら、<設定情報をファイルに保存する>をクリックしてチェックを入れてから<次へ>ボタンをクリックします |
次に作成したレジストリファイルを、Windows PE 3.0上から参照できるようにするため、作業フォルダ下の「mount」フォルダにコピーします。続いて作業フォルダ下の「mount\Windows\System32」フォルダにある「startnet.cmd」をメモ帳などで編集しましょう。初期状態では、Windows PE 3.0環境を初期化する「wpeinit.exe」の呼び出しが行われていますので、次行に「reg import x:\hidemaru.exe」とレジストリファイルの読み込みを行います(図24~27)。
図26 行末に「reg import x:\hidemaru.exe」と入力します。メモ帳を終了するため<×>ボタンをクリックしてください |
図27 ファイルの保存をうながされますので、<保存する>ボタンをクリックします |
これでアプリケーションに組み込み操作が完了しました。あとはWindows PEイメージファイルの変更保存、およびアンマウントを実行し、同イメージファイルを作業フォルダ下の「ISO\sources」フォルダにコピー。ISOイメージファイルを作成すれば作業完了となります。
早速結果を試してみましょう。仮想環境や通常のコンピュータや、ISOイメージファイルもしくはCD-Rに書き込んだメディアから起動しますと、自動的にレジストリファイルの読み込みが行われます。続いて「"x:\Program Files\hidemaru\hidemaru.exe"」と実行すれば、秀丸がWindows PE 3.0上で起動しました。ご覧のように筆者が行ったカスタマイズが反映された状態で起動しています(図28~29)。
今回はレジストリ情報を参照するアプリケーションのため、「startnet.cmd」ファイルの編集を行いましたが、レジストリを用いないタイプのアプリケーションなら、ファイルコピーだけで済みます。ただし、%APPDATA%名フォルダなどにデータファイルを作成するタイプの場合、それらを活かすための処理が必要となりますので、色々とお試しください。
実行する内容
Copype x86 C:\WinPE
copy winpe.wim boot.wim
dism /mount-wim /wimfile:C:\WinPE\boot.wim /index:1 /mountdir:C:\WinPE\mount
※組み込むアプリケーションによって操作内容は異なります。
dism /Unmount-Wim /MountDir:C:\WinPE\mount /Commit
copy C:\WinPE\boot.wim C:\WinPE\ISO\sources
oscdimg -n -o -b"C:\WinPE\etfsboot.com" C:\WinPE\ISO C:\WinPE\WinPE.iso
Windows PE 3.0に日本語IMEを組み込む
最後は我々日本人に欠かせない日本語IMEの組み込みにチャレンジしてみましょう。もっともこの操作は煩雑なため、Microsoftが用意したスクリプトファイルを用いるのがもっともスマートです。同社のWeb構成が再構築されるなどのリンク切れを想定し、同様のスクリプトファイルを本稿に用意致しました。
通常はWinPEIMEJP.cmd.txtファイルを使用しますが、64ビット版Windows 7上で32ビット環境用Windows PE 3.0を作成する場合、フォルダ構成が異なりますので、あらかじめ修正を加えた「WinPEIMEJP_x64.cmd.txt」をお使いください。環境に合わせたファイルをメモ帳などで開き、行頭周辺にある「set WinPEWinDir=」の内容を自身の環境に合わせ、書き換えましょう。ただし、本稿で示している「C:\WinPE」フォルダを作業フォルダとして使用している場合は、そのまま使用できます。あとは拡張子を「.cmd」に変更してファイルを保存してください(図30~32)。
図30 「WinPEIMEJP.cmd.txt」もしくは「WinPEIMEJP_x64.cmd.txt」をメモ帳で開き、環境変数「WinPEWinDir」の内容を自身の環境に書き換えます |
図31 作業を終えたら<ファイル>メニューから<名前を付けて保存>をクリックします |
これまでの手順と同じように、Windows PEイメージファイル(boot.wim)をマウントしてから、先ほど作成したスクリプトファイルを実行してみましょう。これでMS-IMEの実行に必要なファイルがWindows PEイメージファイルをマウントしたフォルダにコピーされます(図33)。
これでMS-IMEの組み込み作業は完了となりました。あとはWindows PEイメージファイルの変更保存、およびアンマウントを実行し、同イメージファイルを作業フォルダ下の「ISO\sources」フォルダにコピー。ISOイメージファイルを作成すれば作業完了となります。
早速結果を試してみましょう。仮想環境や通常のコンピュータや、ISOイメージファイルもしくはCD-Rに書き込んだメディアから起動し、コマンドプロンプトから「notepad.exe」を実行してメモ帳を起動します。メモ帳がアクティブな状態で[半角/全角]キーを押せば、日本語入力が可能になります。コマンドプロンプト上では正しく動作しませんし、ソフトウェアキーボード、設定ツールなどは使用できませんが、簡易的な文字入力環境としてはこれで十分でしょう(図34)。
実行する内容
Copype x86 C:\WinPE
copy winpe.wim boot.wim
dism /mount-wim /wimfile:C:\WinPE\boot.wim /index:1 /mountdir:C:\WinPE\mount
WinPEIMEJP.cmd
dism /Unmount-Wim /MountDir:C:\WinPE\mount /Commit
copy C:\WinPE\boot.wim C:\WinPE\ISO\sources
oscdimg -n -o -b"C:\WinPE\etfsboot.com" C:\WinPE\ISO C:\WinPE\WinPE.iso
阿久津良和( Cactus)