WinPE2.CMDのコマンド解説

(チェックボックスにチェックを入れると解説が表示される)

setlocal
「このバッチファイルで宣言した変数は、このバッチファイル内だけのローカル変数である」と言う意味の定型句。

set WinPEDir=%~dp0winpe_x86
%~dp0は、このバッチファイルの存在するディレクトリのパスをあらわす。(末尾に\が付き、""で囲まない)
その直下にwinpe_x86というサブフォルダを作ると仮定した時、そのフルパスをWinPEDirという変数に収めろという意味。

if exist %WinPEDir%\nul rd /s /q %WinPEDir%
もしもWinPEDirというフォルダが既に存在していたら削除しろという意味。
これはこの直後に呼び出すcopype.cmdにおいて、WinPEDirフォルダが事前に存在していると失敗してしまうため、それを防ぐ予防策である。確認せずに削除するので大事なファイルなどをWinPEDirフォルダ内に置いておかないように注意すること。

call copype x86 %WinPEDir%
copype.cmdバッチファイルを呼び出す。

imagex /mountrw %WinPEDir%\winpe.wim 1 %WinPEDir%\mount
copype.cmdによってWinPEDirフォルダに作製されたwinpe.wimを読み書き可能な状態でマウントする。マウントするとwimファイルの中身が展開され、ユーザーがwimファイルの中身を操作できるようになる。その中身を展開するフォルダをWinPEDir直下のmountフォルダに指定している。

call %~dp0IME.cmd
このバッチファイルと同じ階層にあるIME.cmdを呼び出す。

copy "C:\Program Files\Windows AIK\Tools\x86\imagex.exe" %WinPEDir%\mount\Windows\System32\
WindowsAIKが持つimagex.exeはバックアップやHDDの交換時などに役立つアプリケーションなので、WinPEに取り込むために、mountフォルダ下のサブフォルダにコピーしておく。

copy %~dp0Wimscript.ini %WinPEDir%\mount\Windows\System32\
imageXの設定ファイルであるWimscript.iniも、imagex.exeと同じ階層にコピーしておく。

peimg /prep /f %WinPEDir%\mount\Windows
peimage /prefを行うと、対象フォルダの最適化が行われ無駄なものが削ぎ落とされる。ただしその後、対象フォルダ内をカスタマイズできなくなるので、必要なカスタマイズが全て完了してから行わなければならない。

imagex /unmount %WinPEDir%\mount /commit
imageX /unmountコマンドでアンマウントする。/commitオプションを付けると、今まで行ってきた変更が反映されてwimが再構築される。なおこの操作によってmountフォルダ内は空に戻る。

copy /y %WinPEDir%\winpe.wim %WinPEDir%\ISO\sources\boot.wim
再構築されたwinpe.wimをboot.wimという名前に変えて、WinPEDir下のISO\sources\にコピーする。(元々存在していたboot.wimと置き換わる) この場所がWinPEのwimファイルの定位置であり、WinPEでブートした時に、このwimファイルがRAMディスクにロードされるのだ。

oscdimg -n -b%WinPEDir%\etfsboot.com %WinPEDir%\ISO %WinPEDir%\WinPE2.iso
oscdimgによって、WinPEDir下のISOフォルダの中身が、ISOファイルに変換される。ブート用のファイルとしてetfsboot.comが指定されている。

endlocal
文頭のsetlocalと対になって使われる定型句で、ここでsetlocalの効用を終了するという意味。

元のページに戻る