![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ожидание приложением другого приложения
Нов_и_чок © (2008-08-15 14:33:00)Уважаемые мастера!
В моем приложении производится запуск "внешнего" приложения путем WinExec!
Запускаю свое прил. работает не корректно, при пошаговом запуске все работает как надо!
Как я понимаю мое приложение не дожидается результатов от "внешнего" приложения!
Как добиться ожидания "внешнего" приложения?
P.S. "внешнего" - приложение Windows
Gydvin (2008-08-15 21:13:00) [1]В зависимости чего вы подразумиваете под "Дождаться результатов". Если результаты появляются по завершению той программы - то гугл в помощь
http://www.google.ru/search?hl=ru&q=%D0%B4%D0%BE%D0%B6%D0%B4%D0%B0%D1%82%D1%8C%D1%81%D1%8F+%D0%B7%D0%B0%D0%B2%D0%B5%D1%80%D1%88%D0%B5%D0%BD%D0%B8%D1%8F+%D0%B2%D0%BD%D0%B5%D1%88%D0%BD%D0%B5%D0%B3%D0%BE+%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F+delphi&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=
А так нужно иследовать "поведение" этой программы, и уже исходя из результатов - этого "иследования" предпринимать нужные шаги.
Германн (2008-08-15 20:43:00) [2]
> Юрий Зотов © (15.08.08 18:32) [4]
Я уже несколько раз давал ссылку на этот пример из ФАКа и всё ждал когда же ты обратишь внимание на CloseHandle( pi.hThread );
:-)
Юрий Зотов (2008-08-15 18:32:00) [3]А с маленьким изменением будет совсем хорошо.
Сначала:
CloseHandle( pi.hThread );
А уж потом:
WaitForSingleObject( pi.hProcess, INFINITE );
CloseHandle( pi.hProcess );
Потому что ненужный системный ресурс (хэндл потока) лучше освободить сразу.
Нов_и_чок (2008-08-15 14:59:00) [4]Palladin, огроменейшее тебе спасибо!!! НУ ОЧЕНЬ ПОМОГ!!!
Palladin (2008-08-15 14:35:00) [5]CreateProcess
WaitForSingleObject
Palladin (2008-08-15 14:35:00) [6]http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988621841&n=15