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

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

Вывод процесса установки. [D7, WinXP]


VitAngel ©   (2008-11-27 14:26:00) 

Вечер добрый!

Из своего приложения запускаю setup для установки продукта с помощью следующей функции:

function ExecAndWait(const FileName, Params: ShortString; const WinState: Word): boolean;
var
 StartInfo: TStartupInfo;
 ProcInfo: TProcessInformation;
 CmdLine: ShortString;
begin
 { Помещаем имя файла между кавычками, с соблюдением всех пробелов в именах Win9x }
 CmdLine := '"' + Filename + '" ' + Params;
 FillChar(StartInfo, SizeOf(StartInfo), #0);
 with StartInfo do
 begin
   cb := SizeOf(StartInfo);
   dwFlags := STARTF_USESHOWWINDOW;
   wShowWindow := WinState;
 end;

 Result := CreateProcess(nil, PChar( String( CmdLine ) ), nil, nil, false, CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil,
                         PChar(ExtractFilePath(Filename)),StartInfo,ProcInfo);

 { Ожидаем завершения приложения }
 if Result then
 begin
   WaitForSingleObject(ProcInfo.hProcess, INFINITE);
   { Free the Handles }
   CloseHandle(ProcInfo.hProcess);
   CloseHandle(ProcInfo.hThread);
   //progress_.exit;
 end;  
end;

Вопрос: Могу ли я как то следить за ходом выполнения установки ?

Буду признателен за любую помощь


Юрий Зотов   (2008-11-27 17:47:00) [1]

Но не в ожидающем, а в другом потоке.


Сергей М.   (2008-11-27 14:37:00) [2]

Если порожденный процесс предусматривает такой интерфейс, то можешь.


Наверх

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