Запуск внешних приложений из формы VB
Формулировка задачи:
Добрый день!
Возникла проблема, с которой не могу справиться:
Нужно в программе запустить подряд два внешних приложения, причем второе должно выполняться, когда закончит работу первое. Никаких функций кроме shell для запуска не нашел, а в справке указано, что shell выполняется асинхронно. Посоветуйте, как решить проблему.
Заранее спасибо.
Решение задачи: «Запуск внешних приложений из формы VB»
textual
Листинг программы
Public Const STILL_ACTIVE = &H103& Public Const PROCESS_QUERY_INFORMATION = &H400& Public Declare Function OpenProcess Lib 'kernel32' (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long Public Declare Function GetExitCodeProcess Lib 'kernel32' (ByVal hProcess As Long, lpExitCode As Long) As Long Public Declare Function CloseHandle Lib 'kernel32' (ByVal hObject As Long) As Long Private Sub WaitProcessFinish(ByVal plngProcessId&) Dim lngProcessHandle& Dim lngExitCode& lngProcessHandle = OpenProcess(PROCESS_QUERY_INFORMATION, False, plngProcessId) Do Call GetExitCodeProcess(lngProcessHandle, lngExitCode) DoEvents Loop While lngExitCode = STILL_ACTIVE Call CloseHandle(lngProcessHandle) End Sub Sub Main() WaitProcessFinish Shell('zzz.exe', vbNormalFocus) End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д