4

まず、問題の説明が間違っていたらごめんなさい。私が抱えている問題は、バッチ ファイル内でコマンドを実行すると、別のコンソール ウィンドウが開き、結果がほんの一瞬表示された後、再び閉じてしまうことです。「一時停止」オプションのようなものを使用して、コマンドの結果 (devcon ステータス) をそのウィンドウに表示したいと思います。

コードは次のとおりです。

@ECHO off
cls
:start
ECHO.

ECHO What would you like to do?
ECHO 1. Disable Bluetooth
ECHO 2. Enable Bluetooth
ECHO 3. Check status
ECHO 4. Quit
ECHO.

set /p choice=Type the first word of the option you want.
ECHO.

if %choice%==Disable (
    goto :DBt
) else if %choice%==Enable (
    goto :EBt
) else if %choice%==Check (
    goto :CS
) else if %choice%==Quit (
    goto :end
) else (
    echo Invalid choice.
    pause
    goto start
)

:DBt
devcon disable *REV_7869
goto end

:Ebt
devcon enable *REV_7869
goto end

:CS
devcon status *REV_7869
goto end

:end
exit

「Check」と入力すると、別のコンソール ウィンドウが開き、devcon status コマンドが正しく実行されますが、結果が表示されたらすぐにウィンドウを閉じます。

コマンド プロンプトで「devcon status [my adapter id]」を実行すると、「1 device found.... driver running.」が返されます。ただし、バッチファイルから実行すると、新しいウィンドウが開き、コマンドの実行後すぐに閉じて、その結果を確認できません。

「devcon status *REV」の後に「pause」を追加しても問題は解決しませんでした。他のコマンドがコマンドを実行して閉じた後、元のコマンドウィンドウに「続行するには任意のキーを押してください」と入力するだけです。

だから私の質問は、コマンドの実行後にその2番目のウィンドウを開いたままにするにはどうすればよいですか?

4

3 に答える 3