0

この例では、結果として、スクリプトの残りの部分は変数が変更されたことを認識しません。

set testvar=initial_value
start "" /b /belownormal /wait cmd /c set testvar=im'changed
echo %testvar%

その値をメイン コマンド プロンプトに戻す方法はありますか? &&(これは、より低い CPU 優先度で実行する必要があるアプリの簡単な例であり、次のように使用してエラーレベル値を受け取る必要があります。

start "" /b /belownormal /wait cmd /c myapp.exe  && set elevel=ok || set elevel=fail
4

1 に答える 1

3

これを試して:

@echo OFF &SETLOCAL
set testvar=initial_value
FOR /f "delims=" %%a IN ('start "" /b /belownormal /wait cmd /c echo(im^'changed') do SET "testvar=%%a"
echo %testvar%

.. または次の場合errorlevel:

@echo OFF &SETLOCAL
start "" /b /belownormal /wait cmd /c EXIT /b 322
echo %errorlevel%
于 2013-07-25T17:37:24.620 に答える