Windows 7 の Troubleshooting Pack を作ってみよう (3)
テスト&パッケージ作成
ここのスクリプトのテストは、スクリプトエディタで実行してみることができますが、出来上がったパックを一連で流したい場合には、まずは UI 上から下図のボタンを押して実行する事ができます。
実行すると次のような画面が表示され、実際のトラブルシューティングパックとして動作の確認ができます。
この操作をすると実際にはパッケージ作成も行われていますので、プロジェクトが保存されているディレクトリの下の Output の下の CAT ディレクトリに、拡張子 .diagcab のファイルが作成されます。
これで、トラブルシューターとしては完成なのですが、注意事項があります。
diagcab には証明書によってサインされているのですが、これは下図のようにテスト用のルート証明書が入っている事が前提なので、ほかの環境へ持っていくとこのままでは実行できません。 なので出来上がったパックをちゃんと Deploy するときには正式な証明書によるサインが必要となります。
今回のシナリオの場合、このままでは WAIK が入っていないと動きません。 使ってもらう人に WAIK をダウンロードしてインストールしてもらえばよいのですが、シナリオ的に Windows.old からのデータ吸い上げを行いたいだけなのに WAIK のインストールはちょっと大変です。
というわけで、USMT を最初にコピーしてしまう処理をを入れたいのですが、単にファイルのコピーなので、バッチファイルで行います。
準備
1. InstallUSMT&RUN.bat というファイル名で次の内容を含んだバッチファイルを作成します。
robocopy .\USMT "%LOCALAPPDATA%\Microsoft\Windows AIK\Tools\USMT" *.* /E
"Geathering Data form Windows.old.diagcab"
2. バッチファイルを CAT フォルダに保存します。
3. %ProgramFiles%\Windows AIK\Tools の中にある、USMT のディレクトリごと CAT フォルダにコピーします。
下図のような感じなります
4. この 3 つのファイルを 1つの ZIP ファイルにします。
5. WinZip の SelfExtractor を使って、EXE 化と伸張後に installUSMT&RUN.bat を実行するように設定します
4 および 5 はフォルダを丸ごと圧縮&パッケージして、EXE を作って伸張後に installUSMT&RUN.bat が動かせるならどのようなツールでも OK です。
これで完成した EXE を対象となる環境で動かせば OK です。
次は実際にテスト環境で動かしてみます。