スタート コマンドで .bat ファイルと .cmd ファイルを実行できません (Windows 7)

スタート コマンドで .bat ファイルと .cmd ファイルを実行できません (Windows 7)

Windows コンソールに名前を入力して .bat ファイルと .cmd ファイルを実行できますが、 で実行するとstart "" file.bat次のエラーが発生します: System can't run specified program

私は次の内容の非常にシンプルなファイルでテストしましたtest.bat:

echo "hola"

そして実行中:

start "" test.bat

成功しませんでした。

実行すると、test.bat完璧に動作します。 および でも動作しますcmd /c test.batcmd /k test.batstart コマンドで .exe ファイルを実行すると、正常に動作します。

数か月前に私はansicon(https://github.com/adoxa/ansicon より) 問題はありません。

数日前にもconsolezをインストールしました(https://github.com/cbucher/console/releases) 何かを壊してしまったのかもしれませんが、どこから探し始めればいいのかわかりません。ConsoleZ からではなく、cmd.exe コマンドラインからテストしています。

SSD ハード ドライブがあり、復元ポイントが無効になっているため、復元ポイントを実行できません。

答え1

COMSPEC 変数が破損しているようです。私の Windows 7 マシンには がありますComSpec=C:\Windows\system32\cmd.exe。破損した COMSPEC 値はパイプの動作も妨げます。

答え2

COMSPEC 環境変数を変更するには、(%SystemRoot%\system32\cmd.exe)このファイル.reg を使用してデフォルト値を設定できます。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]  
"ComSpec"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
  74,00,25,00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,\
  00,6d,00,64,00,2e,00,65,00,78,00,65,00,00,00

注記: 新しい変更を適用するには再起動が必要です

関連情報