作成者カテゴリ返答の対象
公開
kaza_787
02/01/2008 06:54 PM
バッチファイル上でのエラーを取得したい
Re: バッチファイル上でのエラーを取得したい

環境がわかりませんので、とりあえずWindowsサーバと言うことで話します。

バッチではないですが、とあるプログラムの制御をWSHを使用し、OLEを介してLotusScriptで行っています。

http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/script56/html/wslrfexitcodeproperty.asp

−−−−−−−−−−−−−−−−−−−−−
'WSHオブジェクトをクリエイト
Set oWSH = CreateObject("Wscript.Shell")

'プログラム設定
execprg = "起動するプログラム、バッチをテキストで記述"

'WSHオブジェクトを実行
Set oEXEC = oWSH.Exec(execprg)

'ステータスが実行中(0)の間はループして、実行終了待ち
Do While oEXEC.Status = 0
  Sleep 1
Loop

'異常終了検出
If oEXEC.ExitCode <> 0 Then
  '異常検出時の処理
End If

−−−−−−−−−−−−−−−−−−−−−

プログラム実行時、終了を待たずにスクリプトの方がが進行するので、待ちの処理を入れる必要があります。
エラーについては、戻り値をWSHオブジェクトから検出する方法をとっています。

Win2000以降であればバッチのリターンの設定など出来るはずですので、その辺は試しにやってみてください。

※Shellで実行するとなぜエラーを検出できないか、ヘルプを読んでおくと今後のためにもなると思います。


[Previous Main Document]
バッチファイル上でのエラーを取得したい (亀)
. . Re: バッチファイル上でのエラーを取得したい (加納)
. . . . Re: バッチファイル上でのエラーを取得したい (亀)
. . Re: バッチファイル上でのエラーを取得したい (kaza_787) * 現在地 *
. . . . Re: バッチファイル上でのエラーを取得したい (亀)
. . . . . . Re: バッチファイル上でのエラーを取得したい (kaza_787)
[Next Main Document]