アプリ版:「スタンプのみでお礼する」機能のリリースについて

VBからBATファイルを起動して戻り値(エラーコード)を
もらうにはどうすれば良いのでしょうか?
WshShellという関数を使用することは、何となく分かるのですが
宜しければサンプルを教えていただけないでしょうか?

A 回答 (2件)

>WScript.CreateObjectの


>ところで"オブジェクトが必要です"となってしまいます。

VBのときは、CreateObjectですね。
    • good
    • 1
この回答へのお礼

おっしゃるとりでした。うまくいきました。
この度は有難うございました。

お礼日時:2005/05/20 19:49
    • good
    • 0
この回答へのお礼

早速の回答有難う御座います。
色々試行錯誤して以下のように書いてみましたが、WScript.CreateObjectの
ところで"オブジェクトが必要です"となってしまいます。何か参照設定に漏れが
あるのでしょうか?宜しくお願いします。

Private Sub Command1_Click()
Dim Fs As New FileSystemObject
Dim ws As WshShell
Dim we As WshExec
Dim tx As TextStream
Dim ERR_FLG As String

Set ws = New WshShell
Set we = ws.Exec("test1.bat > test1.log")
Set Fs = WScript.CreateObject("Scripting.FileSystemObject")
Set tx = Fs.OpenTextFile("test1.log", 1)

Do Until tx.AtEndOfStream
tLine = tx.ReadLine
If InStr(tLine, "ERRORLEVEL") <> 0 Then
ERR_FLG = Mid(tLine, 11, 1)
End If
Loop
  
  msgbox ERR_FLG
End Sub

test1.bat
@echo off
バックアップ処理
IF NOT %ERRORLEVEL% == 0 GOTO ERROR
echo 正常終了しました。
GOTO END
:ERROR
ECHO バックアップ処理がエラーを返して終了しました。
:END
ECHO ERRORLEVEL %ERRORLEVEL%

お礼日時:2005/05/20 16:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています