Windowsバッチファイル(.bat)をダブルクリックしても実行されない

Windowsバッチファイル( .bat )をダブルクリックすると、次のいずれかの.batが発生することがあります。

  • バッチファイルはコマンドプロンプトウィンドウを開きますが、そのコマンドは実行されません。
  • メモ帳またはその他のテキストエディタでバッチファイルの内容を開きます(編集します)。

この投稿では、Windowsがバッチファイルを正しく実行できるように.batファイルの関連付けを修正する方法について説明します。

[修正]ダブルクリックしても.BATファイルが実行されない

Windowsバッチファイル( .bat )は、一連のコマンドを実行または自動化できる特別なファイルタイプです。 コマンドプロンプトは、バッチファイルを読み取って解釈し、ファイルで指定された各コマンドを実行します。

ユーザーが誤って.batファイルをテキストエディターに関連付けたり、.batファイルをcmd.exe関連付けたり、レジストリの設定を改ざんした可能性があります。 [プログラムから開く]ダイアログまたは既定のプログラムを使用して.batファイルのファイルの関連付けを設定すると、ユーザーインターフェイスを使用して既定の設定に戻す方法はありません。 それを修正する唯一の方法は、レジストリの設定を変更することです。

次の手順に従って、Windowsバッチファイルの関連付けを修正します。

方法1:.BATファイルの関連付けのレジストリ修正を使用する

  1. Windows 10のファイル関連付けの修正ページにアクセスし、.batファイル関連付けの修正をダウンロードします。 Windows 7やWindows 8などの古いオペレーティングシステムを使用している場合は、そのページの下にあるこれらのオペレーティングシステムの修正へのリンクを見つけることができます。
  2. アーカイブを解凍し、同封のレジストリファイルを実行します。
  3. 続行するかどうかの確認を求められたら、[はい]をクリックします
  4. OKをクリックします。

方法2:.BATファイルの関連付けを手動で修正する

重要:続行する前に、安全対策としてシステムの復元ポイントを作成してください。 Windowsレジストリの不適切な変更は、深刻な問題を引き起こす可能性があります。

$config[ads_text6] not found
  1. レジストリエディター( regedit.exe )を起動します。
  2. 次のキーに移動します。
     HKEY_CLASSES_ROOT \ .bat 
  3. (default)値データをbatfile設定し(default)
  4. 次のキーに移動します。
     HKEY_CLASSES_ROOT \ batfile \ shell 
  5. 右側のペインで、 (default)値のデータが設定されていないことを確認し(default)value not setれてvalue not setとして読み取る必要があります。 そこに他のテキストが表示されている場合は、 (default)値を右クリックしてDeleteを選択します。
  6. 次に、次のキーに進みます。
     HKEY_CLASSES_ROOT \ batfile \ shell \ open \ command 
  7. (default)をダブルクリックして、値のデータを次のように設定します。
     "%1"%* 
  8. 次のブランチに移動します。
     HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExts \ .bat 

    サブキーの1つ( OpenWithListOpenWithProgidsおよびUserChoice )に存在する値が問題の原因である可能性があります。

  9. .batキーを右クリックし、 Deleteを選択します。 確認を求められたら、[ Yesクリックします。 心配しないで! このレジストリキーとその3つのサブキーは簡単です.batファイルの関連付けのデフォルトを上書きする場合にのみ必要です。
  10. レジストリエディタを終了します。

方法3:独自のREGファイルを作成して、方法2に記載されている手順を自動化する

方法2に記載されている手順を自動化する場合は、この方法を使用します。 Method 1Method 3の違いは、 Method 1では、 .batファイルタイプ登録のすべての詳細が処理されることです。 一方、 Method 2はやや外科的です。つまり、上書きされたエントリのみをチェックして削除します。

  1. メモ帳またはお気に入りのテキストエディタを開きます。
  2. 次の行をコピーしてメモ帳に貼り付けます
     Windowsレジストリエディタバージョン5.00 [HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ .bat] @ = "batfile" [HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ batfile \ shell] @ =-[HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ batfile \ shell \ open \ command] @ = "\"%1 \ "%*" [-HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ FileExts \ .bat] 
  3. 拡張子が.reg任意の名前でファイルを保存します( fix_bat.reg
  4. fix_bat.regをダブルクリックして、レジストリの設定を適用します。 確認を求められたら、[はい]をクリックします。

それでおしまい! これで、バッチファイルの関連付け設定が修正されました。 バッチファイルをダブルクリックしても正しく実行されるようになりました。

関連記事