【VBScript】※渡したい変数のみ抜粋
WScrip quit(1)
【バッチスクリプト】
for %%i ("パラメータファイル") do (
cscript a.vbs %%i
if not %errorlevel%==0 goto err
)
上記VBSが異常終了した際に返す、戻り値1を
そのままバッチスクリプトのerrorlevelに返したい
のですが、errorlevel==0となってしまいます。
for文を使わず、vbsを実行していた際には、
旨く引き渡せていたのですが、構文の修正が
必要なのでしょうか?
どなたかご教示下さい。
宜しくお願いします。
No.1ベストアンサー
- 回答日時:
例示されたバッチファイルでは、()内の環境変数はfor文開始時に展開されてしまいます。
従って%errorlevel%はfor文を開始したときの0に置き換えられてしまいます。
これを回避するには
・for文内を()で記述せずcall文でサブルーチンとする
・errorlevelの比較に if errorlevel 構文を使う
・環境変数の遅延展開を使う
などがあります。
たとえば、if errorlevel 構文を使う場合
for %%i ("パラメータファイル") do (
cscript a.vbs %%i
if errorlevel 1 goto err
)
や、環境変数の遅延展開を使う場合
setlocal ENABLEDELAYEDEXPANSION
for %%i ("パラメータファイル") do (
cscript a.vbs %%i
if not !errorlevel!==0 goto err
)
などとかけます。詳しくは、set /? や setlocal /? や if /?でヘルプをご覧ください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Microsoft ASP C#からvbsを実行したい 5 2022/11/24 17:31
- Visual Basic(VBA) batにて、異なるフォルダの同名ファイルを参照し、文字列を判別。擬似配列で変数へ格納 3 2022/04/10 03:37
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- Visual Basic(VBA) VBS Bookを閉じるコード 1 2023/02/16 17:31
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) VBSで作成した相対パスのショートカットが他者と共有できません。 1 2022/09/05 11:20
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトの「%1」と...
-
バッチファイルで、iniファイル...
-
[DOS] コピー先に同じファイル...
-
バッチ処理で16進数でファイル...
-
ftp処理でmove(移動)を行いたい
-
DOSのバッチ作成について‐FORの...
-
バッチコマンドでファイル名の...
-
テキストファイルのファイル名...
-
【vbs】ファイル名の検索と該当...
-
access,vbaでフォルダ内のファ...
-
コマンドプロンプトで変数が数...
-
ExifToolでの文字化け対策
-
サブフォルダ内のファイルを読...
-
画像をコピーしてリネームするbat②
-
スタートアップのファイルをバ...
-
VBA GetAttrについて教えてくだ...
-
コマンドプロンプトでファイル...
-
ファイル名を該当フォルダ内か...
-
【バッチプログラム】フォルダ...
-
Excel VBA マクロ ファイル名ソ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトの「%1」と...
-
コマンドプロンプトでファイル...
-
バッチファイルで、iniファイル...
-
コマンドプロンプトで変数が数...
-
バッチコマンドでファイル名の...
-
[DOS] コピー先に同じファイル...
-
フォルダ内の更新日時が一番新...
-
ftp処理でmove(移動)を行いたい
-
ExcelVBAのDirでスペース含むフ...
-
.batでファイル名から抽出して...
-
DOSのバッチ作成について‐FORの...
-
access,vbaでフォルダ内のファ...
-
Windowsコマンドプロンプトで、...
-
【DOSバッチ開発】末尾のタブの...
-
word VBA ファイル名 保存
-
【vbs】ファイル名の検索と該当...
-
コマンドプロンプトまたはpower...
-
ファイル名を該当フォルダ内か...
-
バッチ処理で16進数でファイル...
-
スタートアップのファイルをバ...
おすすめ情報