powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как дождаться выполнения программы
3 сообщений из 3, страница 1 из 1
Как дождаться выполнения программы
    #32391871
Фотография APM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть программа на VB6 в ней код
Код: plaintext
1.
2.
3.
4.
5.
{...}
dim rt
rt=shell( "MyProg2.exe" )
msgbox  "OK" 
{...}


Каким образом приостановить выполнение программы пока внешние приложение запушено?
Допускаю что функция shell здесь не уместна - но тогда какая?

Внешнее приложение тоже на vb6.(т.е рассмотрюю все варианты ;) )

Итак: Как организовать приостановку работы первой программы на время выполнения запущенной ей второй программы?

Заранее спасибо.
...
Рейтинг: 0 / 0
Как дождаться выполнения программы
    #32391994
Hibernate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
Private Declare Function CreateProcessA Lib  "kernel32"  (ByVal _
   lpApplicationName As Long, ByVal lpCommandLine As String, ByVal _
   lpProcessAttributes As Long, ByVal lpThreadAttributes As Long, _
   ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, _
   ByVal lpEnvironment As Long, ByVal lpCurrentDirectory As Long, _
   lpStartupInfo As STARTUPINFO, lpProcessInformation As _
   PROCESS_INFORMATION) As Long

Private Declare Function WaitForSingleObject Lib  "kernel32"  (ByVal _
   hHandle As Long, ByVal dwMilliseconds As Long) As Long

Private Declare Function CloseHandle Lib  "kernel32"  (ByVal _
   hObject As Long) As Long

Private Const NORMAL_PRIORITY_CLASS = &H20&
Private Const INFINITE = - 1 &

Private Type STARTUPINFO
   cb As Long
   lpReserved As String
   lpDesktop As String
   lpTitle As String
   dwX As Long
   dwY As Long
   dwXSize As Long
   dwYSize As Long
   dwXCountChars As Long
   dwYCountChars As Long
   dwFillAttribute As Long
   dwFlags As Long
   wShowWindow As Integer
   cbReserved2 As Integer
   lpReserved2 As Long
   hStdInput As Long
   hStdOutput As Long
   hStdError As Long
End Type

Private Type PROCESS_INFORMATION
  hProcess As Long
  hThread As Long
  dwProcessID As Long
  dwThreadID As Long
End Type



Public Sub ExecCmd(CmdLine$)
   Dim proc As PROCESS_INFORMATION
   Dim start As STARTUPINFO
   Dim ret As Long
   ' Initialize the STARTUPINFO structure:
   start.cb = Len(start)
   ' Start the shelled application:
   start.dwFlags =  1  'чтоб окно было невидимым.
   
   ret& = CreateProcessA(0&, CmdLine$, 0&, 0&, 1&, _
        NORMAL_PRIORITY_CLASS, 0&, 0&, start, proc)
        
   ' Wait for the shelled application to finish:
   ret& = WaitForSingleObject(proc.hProcess, INFINITE)
   ret& = CloseHandle(proc.hProcess)
End Sub
...
Рейтинг: 0 / 0
Как дождаться выполнения программы
    #32392191
Фотография APM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо - пошел пробовать...
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как дождаться выполнения программы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]