コンピュータのシャットダウン時に何らかの処理を行いたい場合は、グループ・ポリシーを使って制御することができる。起動時やシャットダウン時に実行するスクリプトは、[コンピュータの構成]にある[Windowsの設置]−[スクリプト]で指定する。バッチ・ファイルだけでなくJScriptやVBScriptなどのWSHスクリプトも実行可能である。
対象OS:Windows 2000/Windows XP Professional/Windows Server 2003
システムを管理していると、シャットダウン時に何らかの処理を実行したい場合がある。例えば、シャットダウン処理を開始したことをリモート・コンピュータに通知したり、一時フォルダの内容をすべて削除したりしたい場合などである。また一部のサービスの中には、慎重に停止しないと不具合を生じるものもある。このような場合は、システムがシャットダウンしてしまう前に、特定のサービスを確実に停止する処理を実行する必要がある。
グループ・ポリシーを利用すれば、シャットダウン時に実行するスクリプトを指定することが可能だ。プログラムやスクリプトは複数指定することもできる。シャットダウン処理が開始されると、設定したスクリプトが順次実行される。ユーザーがログオンしていた場合は、ログオフ完了後に処理が実行される。処理の流れを図にすると次のようになる。
ただしローカル・コンピュータのグループ・ポリシー・オブジェクトを使用するので、グループ・ポリシーに対応していないWindows XP Home Editionでは使えない。
シャットダウン時に実行するスクリプトを指定するには、「グループ・ポリシー・オブジェクト・エディタ(gpedit.msc、以下、GPEditと略)」を起動して、ローカル・コンピュータの既定のポリシーに情報を追加する。
GPEditは、コントロール・パネルの「管理ツール」には登録されていない。このため起動には、[スタート]−[ファイル名を指定して実行]で“gpedit.msc”と入力する。または[ファイル名を指定して実行]からMMC(mmc.exe:マイクロソフト管理コンソール)を起動して、グループ・ポリシー・オブジェクト・エディタをスナップインとしてコンソールに追加する。MMCの詳細については、別掲の「Windows管理ツールの共通フレームワーク『MMC』」を参照されたい。
すると次のようなGPEditのウィンドウが表示される。
シャットダウン時に実行されるスクリプトを設定する場所は、[ローカル コンピュータ ポリシー]−[コンピュータの構成]−[Windows の設定]の中にある、[スクリプト(スタートアップ/シャットダウン)]である。これを選択して、右側のペインに表示される[シャットダウン]をダブルクリックする。なお今回とは逆に、システムの起動時にスクリプトを実行させたければ[スタートアップ]で設定すればよい。また[ユーザーの構成]−[Windows の設定]の中にある[ログオン](ログオン時に実行)、[ログオフ](ログオフ時に実行)も、同じ要領で設定ができる。
[シャットダウン]をダブルクリックすると、登録されているスクリプトの一覧表示と追加を行う次の画面が表示される。一覧には、スクリプトの名前や所在、この登録画面で指定した引数(コマンド・ライン・パラメータ)が表示される。
ここで[追加]ボタンをクリックすると、次のようにコマンドとそのパラメータを指定する画面が表示される。
ここで[参照]ボタンをクリックすれば、実行するファイルをGUIで選択できる。デフォルトでは%SystemRoot%\system32\GroupPolicy\Machine\Scripts\Shutdownディレクトリが開かれるので、違う場所にあるスクリプト・ファイルを指定する場合は、ファイルが存在するディレクトリを開いてから、ファイルをダブルクリックして指定する。
このダイアログでの設定では、バッチ・ファイルだけでなく、JScriptやVBScript、通常のアプリケーション(.exeファイル)も指定可能だ。
■この記事と関連性の高い別の記事
Copyright© Digital Advantage Corp. All Rights Reserved.