2024.04.10
【Windows】アラートウィンドウを表示させる

UnsplashAsh from Modern Afflatusが撮影した写真

はじめに

データを更新するバッチを誤って実行してしまい大惨事に。。

とならないよう、バッチ実行時に処理を継続するか否かのアラートを表示させるバッチの例です。

動作確認した環境

OS:Windows11 Pro

アラートのイメージ

このようなアラートを実装します。

コマンド

以下をバッチの冒頭にコピペするだけで、誤ってバッチ実行しないようにアラートを表示させることができます。

※2か所にある「pause」は動作確認用です。実際に使う際は削除してください。

@echo off
chcp 65001

rem アラートを表示する  (戻り値は%ERRORLEVEL%で受け取る はい⇒6、いいえ⇒7)
powershell -Command "Add-Type -AssemblyName System.Windows.Forms;$result = [System.Windows.Forms.messageBox]::Show('処理を継続しますか?','','YesNoCancel','Warning');exit $result;"

rem 「[はい]を押す」以外の操作がされたら処理終了
if not %ERRORLEVEL% == 6 (
  echo '処理を中断します'
  pause
  exit /B;
)

echo '処理を継続します'
pause

アラート自体はPowerShellの機能を使用して表示させています。

  

以上です。