[ホーム] - [バッチファイル サンプル一覧] - [shutdown.exeの成功・失敗の結果をイベントログに記録する]

shutdown.exeの成功・失敗の結果をイベントログに記録する | Windows バッチファイル






目的


shutdown.exe を実行し、結果を Windows イベントログに記録するサンプルコードを紹介します。
Windows Server 2003のシャットダウン/リブートは標準添付の shutdown.exeで実行が可能です。

(2018/11/22追記)
Windows Server 2003の時代はOSにshutdown.exe は添付しておらず別途リソースキットの付録CD-ROMなどから入手する必要がありました。


サンプルコード集

以下は Windows 10 環境におけるサンプルコードと実行結果です。

成功・失敗は ERRORLEVELの値を確認することにより可能です。以下サンプルでは IPアドレスが 100.1.1.1 である NT 系サーバをシャットダウンし結果をローカルのイベントログに記録しています。失敗し場合はこのログより原因の調査が可能です。

サンプルコード:

shutdown /m \\100.1.1.1 -s

if %ERRORLEVEL% NEQ 0 (
eventcreate /L APPLICATION /T ERROR /SO shutdown /ID 1 /D "task shutdown failed: %ERRORLEVEL%"
)

以下は存在しない IP へ実行したサンプルです。エラーとして 53 が戻されています。

サンプルコード:

C:\>shutdown /m \\100.1.1.1 -s
100.1.1.1: 入力されたコンピューター名が有効でないか、ターゲット コンピューターでリモート シャットダウンがサポートされて いません。名前を確認してから再実行するか、またはシステム管理者に問い合わせてください。(53)

C:\>echo %ERRORLEVEL%
53

既にシャットダウン処理を開始しているのに再度シャットダウンコマンドを発行した場合は 1190 が戻されます。以下の例では さらに -a オプションで再起動をキャンセルしています。


サンプルコード:

C:\>shutdown -s

C:\>shutdown -s
システムのシャットダウンは既にスケジュールされています。(1190)

C:\>echo %ERRORLEVEL%
1190

C:\>shutdown -a






本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)

[ホーム] - [バッチファイル サンプル一覧]