2017-02-15 12 views
-1

私はERRORLEVELを使ってバッチファイルを書き込もうとしました。 不幸にも、それは働かない(または、私が期待しているようにうまくいかない)。Windows組み込みコンパクト7 - バッチファイルを使用しています - エラーレベルは不可能ですか?

ERRORLEVELは環境変数として利用できないようです。 CMDに

:CMDに ないエコー

: %のエラーレベルの%== 0エコー試験

結果場合 %エラーレベル%==%エラーレベル%エコー試験

もたらす場合:CMDに 試験

: エコー%エラーレベル%

結果:SETLOCAL使用について %エラーレベル%

読むが、SETLOCALは

任意のアイデアを実行することはできませんか? ありがとうございます!

+0

古い構文は 'if /?'を参照してください。コマンド "エラーレベル1"は、1より大きいか等しいことを意味します。 – LotPings

+0

私は本当にたくさんのバッチファイルを書いていますが、__IF__条件ではまったく必要ではないので、決して '%ERRORLEVEL%'を使用しませんでした。マイクロソフトのサポート記事「バッチファイルの特定のエラーレベルのテスト」(https://support.microsoft.com/en-us/kb/69576)を参照してください。一般に、もし前のコマンド/アプリケーションの終了コードのerrorlevel1が1以上であれば、またはexitコードが0以下であればエラーレベル1であれば十分であり、遅延拡張なしのコマンドブロック内でも十分である。負の値で終了するアプリケーションはわかりません。これは、終了値のすべてのOSガイドラインに反します。 – Mofi

答えて

1

ERRORLEVELは、入力を表示するために処理または機能を実行する必要があります。例えば、Ping Googleを使いたい場合、成功すれば「良い」と表示され、失敗した場合は「悪い」と表示され、それがERRORLEVELになります。プロセスまたは機能が存在しない場合はERRORLEVELを使用できません。

EX。

echo off 
goto :pingtest 
cls 

:pingtest 
cls 
ping www.google.com 
if errorlevel 2 goto :good 
if errorlevel 1 echo :bad 

:good 
cls 
echo Good 
echo[ 
pause 

:bad 
cls 
echo Bad 
echo[ 
pause 

上記のコードからわかるように、プロセスがあります。

チャンスがあれば、私のブログをチェックできますか?http://pryrotech.weebly.com

+0

ありがとうございます。すべてのコマンドが結果としてerrorlevelを返すとは限りません。ファイルが存在する場合、 "IF EXIST"を使用してバッチファイルをダブルチェックします。サポートのためにすべてにまで及ぶ。 – Arndt

関連する問題