OS:win2000pro
VB:VB6.0sp5
プロジェクトA
formA にて 別プロジェクトBを実行
private sub command_click()
projectB.exe
MsgBox "projectB 実行完了"
end sub
1.projectBの処理がすべて完了したら
メッセージ「projectB 実行完了」
を出力したいのでが、どのようにすれば良いのか
分かりません
ご教示くださいます様よろしくお願いいたします
2.projectBの処理中にエラー発生時も
projectA にて感知したいのですが、
どのようにすればいいのでしょうか?
初歩的なご質問で申し訳ございません
よろしくお願いいたします
No.2ベストアンサー
- 回答日時:
他のexeを起動させるにはShell関数を使う方法とAPIを使う方法があるのですが・・
Shell内で起動しShellの終了を取得してメッセージを表示ではどうでしょうか?
projectB.exeオブジェクトのハンドルを取得させて終了を待ち終了したらメッセージを表示する。
Private Declare Function OpenProcess Lib "kernel32" _
(ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long) As Long
Private Declare Function GetExitCodeProcess Lib "kernel32" _
(ByVal hProcess As Long, lpExitCode As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" _
(ByVal hObject As Long) As Long
Private Const PROCESS_QUERY_INFORMATION = &H400&
Private Const STILL_ACTIVE = &H103&
Private Sub ShellEnd(ProcessID As Long)
Dim hProcess As Long
Dim EndCode As Long
Dim EndRet As Long
hProcess = OpenProcess(PROCESS_QUERY_INFORMATION, 1, ProcessID)
Do
EndRet = GetExitCodeProcess(hProcess, EndCode)
DoEvents
Loop While (EndCode = STILL_ACTIVE)
EndRet = CloseHandle(hProcess)
End Sub
private sub command_click()
On Error GoTo command_Click
Dim Ret As Long
Ret = Shell("C:\フルパス\projectB.exe", AppWinStyle.Hide)
ShellEnd (Ret)
MsgBox ("projectB 実行完了")
command_Click:
MsgBox Err.Description
Exit Sub
End Sub
試しに貼り付けてやってみてください。
No.1
- 回答日時:
A.exeに見えないボタンを用意して、B.exeの処理終了後にA.exeの見えないボタンを押させるというのはどうでしょう?
http://okweb.jp/kotaeru.php3?q=199357
もしくは、B.ExeをAcitveXEXEとして作成してしまえば、A.exeの内部DLLのようにB.exeを扱えるので、そっちの方がお勧めできるかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) VBAで最新のデータを別シートに転記する方法をお教えください。 3 2022/04/07 19:20
- Visual Basic(VBA) VBA ステータスバー DoEvents 1 2023/03/30 12:22
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
- その他(Microsoft Office) スプレッドシート関数、右端の列番号を取得したいですがもう一歩のところで上手くいきません。 2 2022/12/28 18:00
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
C#VB、exeに埋め込んだexeの実行
-
Visual Studio 「AnyCpu」について
-
Pythonのコードをexe化
-
「読み込み違反」が起きたとき...
-
excel vbaから実行するexe実行...
-
C++初心者です。 debug asserti...
-
Windows PowerShellでC言語を実...
-
VisualStudioでC#が実行できない
-
メモ帳を開いて最大化するには?
-
VBがデバッグ時落ちてしまう
-
外部exe呼び出しの方法 ShellEx...
-
VC++2010でのエラー
-
エラーが出ても、それより後の...
-
WindowsXpでAppActivate
-
androidで.exeを実行できますか?
-
vba 時間の引き算 例えば 15:00...
-
アウトルックが起動しているか...
-
VB6(SP5)+OO4OでCreateObjectが...
-
印刷ダイアログを表示させない方法
-
VBSから別のVBS起動するとき変...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Visual Studio 「AnyCpu」について
-
excel vbaから実行するexe実行...
-
「読み込み違反」が起きたとき...
-
Windows PowerShellでC言語を実...
-
VB6.0 exe作成時に実行時エラー...
-
C#VB、exeに埋め込んだexeの実行
-
実行ファイル(.exe)が別のPC...
-
ActiveDirectoryから値を取得
-
ActiveX → VB を起動するとCre...
-
C++初心者です。 debug asserti...
-
androidで.exeを実行できますか?
-
Pythonのコードをexe化
-
VBにてDLLをデバックする方法。
-
ACCESSランタイムでエラー
-
実行ファイルの動作について
-
外部exe呼び出しの方法 ShellEx...
-
shell関数には二重引用符を渡せ...
-
VisualStudioでC#が実行できない
-
C#で実行可能なdllの作成方法
-
Eclipse CDT MinGWによるC言語
おすすめ情報