Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Запуск внешней консольной программы [D5, Win95/98, WinME, NT4, Win2k, WinXP]


sashag ©   (2003-10-27 18:57:00) 

Привет всем.

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

Пробовал так
if CreateProcess( nil,PChar(cmdline), nil, nil, False, 0, nil, nil, si, pi) then begin
WaitForSingleObject( pi.hProcess, INFINITE );
CloseHandle( pi.hProcess );
CloseHandle( pi.hThread );
ShowMessage("Done !");
end;


В результате запускается консольная программа, происходит ожидание ее завершения, но ВИДНА КОНСОЛЬ.

Кто-нибудь может чего посоветовать?


FireHack   (2003-10-27 19:14:00) [1]

ну тогда отлавливай хэндл консоли и делай
showwindow(Handle, sw_hide)


FireHack   (2003-10-27 19:14:00) [2]

ага, последнее пропусти мимо ушей


sashag   (2003-10-27 19:13:00) [3]

Получилось! Спасибо FireHack.

Нужно было
STARTUPINFO.dwFlags:= STARTF_USESHOWWINDOW;
STARTUPINFO.wShowWindow:=SW_HIDE;


sashag   (2003-10-27 19:07:00) [4]

Не помогает


FireHack   (2003-10-27 19:03:00) [5]

Попробуй

STARTUPINFO.wShowWindow:=SW_HIDE


Наверх

Титульная страница Поиск, карта сайта Написать письмо