Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
rus_lan
1

Как узнать, когда программа завершила работу?

31.12.2009, 08:38. Просмотров 850. Ответов 2
Метки нет (Все метки)

Из программы на VB 6.0 запускаю другую и по окончании работы второй программы хочу выполнить некоторые действия. Как можно узнать, когда вторая программа завершила работу?
Заранее благодарен.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.12.2009, 08:38
Ответы с готовыми решениями:

Как в VBA узнать когда процесс закончил работу?
Как в VBA узнать когда процесс закончил работу? И существует работа с процессами в VBA

Выход из цикла for: требуется, чтобы программа завершила свою работу как только найдет первую единицу матрицы
дана матрица A размера MxN, состоящая из нулей и единиц, Требуется, чтобы программа завершила свою...

Программа завершила работу с ненулевым кодом возврата. C++
Добрый вечер.При отправке в проверочный сайт ошибка runtime-error. В значении ошибок, Run-time...

Как узнать когда программу запустил User, а когда автозагрузка ?
Как узнать когда программу запустил User, а когда автозагрузка ?

2
Messir
31.12.2009, 08:51 2
Как запустить другую прогу и дождаться ее завершения, уже не раз обсуждалось!
А чтобы все остальное в это время могло работать (в мысле остальные части программы), то надо просто вызвать другую прогу из нового потока с ожиданием ее завершения, а после завершения проги поток либо посылает основной проге какое-то событие, либо ставит какой-то флаг - в общем сигнализирует, что прога завершилась, и все - на этом поток забивается.
0 / 0 / 0
Регистрация: 01.12.2008
Сообщений: 45
31.12.2009, 14:03 3
Через API

Visual Basic
1
2
3
4
5
6
7
8
9
10
Declare Function GetProcessVersion Lib "kernel32" (ByVal ProcessId As Long) As Long
 
Public Sub ExecuteAndWait(CommandLine As String, WinStyle As Integer)
Dim Pid As Long
Pid = Shell(CommandLine$, WinStyle)
While GetProcessVersion(Pid) <> 0
 DoEvents
Wend
MsgBox "Выполняй другие действия!", vbInformation, "Уже можно"
End Sub
Если Pid=0, то внешняя прога завершилась.

Можно поискать примеров на vbrussian.com и еще в куче мест. Где-то видел реализацию через WaitForSingleObject.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.12.2009, 14:03

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Можно ли узнать когда установлена программа
На планшет, то есть точную дату и время?

Программа останавливает свою работу, когда начинает выполнятся функция. Метод хорд
Писал программу для нахождения приближенных корней методом хорд, но программа работает нормально...

Как узнать когда кончаеться функция?
void Scan(AnsiString Path) { TSearchRec sr; if(FindFirst(Path + &quot;*.*&quot;, faAnyFile, sr) == 0)...

Как узнать когда Edit прокручивается?
Здравствуйте! Есть текстовое поле (Edit) с вертикальным ползунком (стиль WS_VSCROLL). Как отловить...

Как узнать когда включали комп?
Хотел бы знать, как можно узнать во сколько был включен компьютер и сколько по времени он...

Как узнать, когда сайт будет доступен?
Сайт - форум большую часть времени не отображается в браузере (видны пустые страницы). Надо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.