| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: WinAPI и системное программирование > Что-то типа system() |
| Автор: asdf 25.9.2004, 20:43 |
| Значит, нужно запустить консольный exe из окна. Было бы чЮдесно, если б: 0. я знал как вообще его вызвать 1. окно ждало завершения исполнения exe. 2. после завершения exe окно было активным. 3. окно было активным при исполнении exe. 4. консольное окно вообще не появлялось. |
| Автор: Ripper 25.9.2004, 20:52 | ||
Ненаю тока как сделать чтобы программа ждала завершения...ну можеш палзу поставить .
Сделать окно проги активным - SetFocus; |
| Автор: asdf 25.9.2004, 22:23 |
| thx, Ripper хммм, а как паузу поставить? |
| Автор: Ripper 25.9.2004, 22:46 |
| sleep() |
| Автор: maxim1000 26.9.2004, 00:06 |
| чтобы ждать окончания процесса, нужно создать егос помощью CreateProcess эта функция возвращает handle нового процесса потом можно использовать функцию WaitForSingleObject для ожидания окончания процесса пример создания процесса: MSDN::PlatformSDK::Base Services::DLLs,Processes and Threads работа с ожидаемыми объектами ...::Base Services::Synchronization |
| Автор: asdf 27.9.2004, 18:57 | ||
MSDN нет |
| Автор: maxim1000 27.9.2004, 19:00 |
| http://msdn.microsoft.com |
| Автор: asdf 27.9.2004, 19:23 |
| 56kbps =))))))))))))))))))))))))))))))))))))))))))))))))))))))) |
| Автор: maxim1000 27.9.2004, 19:28 |
| не надо его качать там можно посмотреть интересующий раздел в on-line |
| Автор: asdf 27.9.2004, 20:06 |
| мммммдддддааааа Delphi 5 не соответствует ANSI C перевести ннннннииии ммммммммааааааааггггггггггууууууууууууу T_T |
| Автор: p0s0l 27.9.2004, 20:38 | ||||||||||
Качай DRKB - пригодится! Это оттудава: Как запустить программу и подождать ее завершения?
Делай SetForegroundWindow (Form1.Handle) после того, как консольное приложение окончило работу (после WaitForSingleObject).
Делай ExecAndWait с параметром SW_HIDE - пример:
|
| Автор: asdf 4.10.2004, 17:31 |
| Делал всё через ExecAndWait с параметром SW_HIDE: под WinXP всё работало, под Win2000 - exe из под C++ Builder 5.0 идут, а сделанные, как я понял, в Turbo C++ 3.0, показывают окно при исполнении что делать? |
| Автор: asdf 4.10.2004, 20:14 |
| Может это быть из-за ограниченных привилегий? |