
VB6からCで作られたEXEを実行した戻り値を取得したいのですが
どのように記述すればよいのでしょうか?
制御が戻るまで固まらずに待ち続けるには
CreateProcessを使うと良いとは思いますが、
notepadなど一方的に動作させて終了するようなサンプルしかなく、
戻り値を取得するサンプルは見当たりませんでした。
戻り値といってもCのEXEは結果を標準出力で表示されるものですが・・・
何か良いサンプルはあるでしょうか?
CreateProcessを使わない方法でも構いません。
r = CreateProcess( _
cmd, _
param, _
ByVal 0&, _
ByVal 0&, _
0, _
NORMAL_PRIORITY_CLASS, _
ByVal 0&, _
vbNullString, _
si, _
pi _
)
No.2ベストアンサー
- 回答日時:
>制御が戻るまで固まらずに待ち続けるには
プログラムが、イベントを処理してくれないとすると、タイマを使って
監視するしかないような気がします。
Dim ProcessHandle As Long 'プロセスハンドル(共通変数)
Dim TerminateCode As Long '終了コード(共通変数)
Private Sub Timer1_Timer()
If WaitForSingleObject(ProcessHandle, 0) = 0 Then
GetExitCodeProcess ProcessHandle, TerminateCode
Timer1.Interval = 0
End If
End Sub
http://msdn.microsoft.com/ja-jp/library/cc429427 …
http://msdn.microsoft.com/ja-jp/library/cc429117 …
No.1
- 回答日時:
cmd.exeなどのShellから起動してリダイレクトでファイルに出力したほうがいいかもしれません
WSH経由で起動させれば プログラムの停止まで実行を待たせることも可能です
『Windows Scripting host Object Model』の参照設定を施し
dim wsh as New WshShell
wsh.run "cmd /c プログラムパス > 出力ファイル名", 5, 1
Open "出力ファイル名" for input as #1
' ファイルの入力処理
Close
といった具合で ・・・
参照設定を行わないのであれば
dim wsh as Object
Set esh = Createobject("WScript.Shell")
といった具合です
お探しの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
- JavaScript カラーミーショップのsectionループ内で、[引数][戻り値]ありの関数的な処理を行いたいです。 1 2022/05/07 19:39
- Excel(エクセル) Excelマクロの表示のExcel内をfindで検索 3 2022/06/15 20:07
- Excel(エクセル) エクセル VBA実行中のApplication.ScreenUpdatingについて 3 2023/07/13 21:06
- C言語・C++・C# C++のcinの動作 5 2023/02/26 00:13
- Excel(エクセル) エクセルのイベントVBAを複数のシートで動かしたい 1 2022/12/07 16:55
- 数学 確率の問題 4 2023/02/24 01:07
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
小数点つきの数値を文字列とし...
-
csvファイルでの出力について
-
コマンド(例えばls)の出力結果...
-
AccessVBA複数レポート条件毎に...
-
Excel2000~2003でUTF-8BOM出力
-
アクセス>マクロ>テキスト変換
-
raw形式からbmp形式への書き込...
-
テキストの各行に行番号をつけ...
-
popen使用時のエラー出力を出さ...
-
CreateProcess関数と実行後の戻...
-
ファイルの文字コードをUTF-8に...
-
ファイル出力の場所を指定
-
CSV形式に変換
-
gccによって、BOM付きのUTF-8で...
-
フォルダにあるPDF情報の抽出(VBA)
-
Accessでのレポート印刷待機方法
-
ファイル比較について
-
FORTRANの出力データの左寄せが...
-
visual c++でutf-8の扱い
-
標準出力とファイルに効率的に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【ExcelVBA】UTF-8(BOM無)でC...
-
テキストファイルに改行コード...
-
コマンド(例えばls)の出力結果...
-
VC++でUTF-8のファイルを出力し...
-
シェルコマンドの 2>&1 とはど...
-
Acccess レポートをグループ別...
-
ファイル形式またはファイル拡...
-
pcap形式データをテキストへ抽出
-
ファイル出力の場所を指定
-
AccessVBA複数レポート条件毎に...
-
外国語とCSVについて
-
VBA でメモ帳へ保存する際の保...
-
サウンド出力のデバイスを選択...
-
C++ fprintf_sの使い方がわからん
-
アプリを実行すると、作成者を...
-
ファイルの文字コードをUTF-8に...
-
1行ずつではなくまとめてファイ...
-
Wordマクロで指定したフォルダ...
-
SendKeys "^V", True(貼り付け...
-
CSVファイルを任意の場所に出力...
おすすめ情報