Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Вниз

Wait Process 


erik   (2001-11-15 23:35) [0]

У меня стандартная проблема надо отследить завершение родительской задачи.
//Start в главной задаче
ProcessID := GetCurrentProcessID;
ZeroMemory(@SI, SizeOf(SI));
SI.cb := SizeOf(SI);
SI.dwFlags := STARTF_USESHOWWINDOW;
SI.wShowWindow := SW_HIDE;

CmdParam := "Extractor.exe "+IntToStr(ProcessID)+" "+FileName;
if CreateProcess(nil,PChar(CmdParam), nil, nil, False,
DETACHED_PROCESS, nil, nil, SI, PI) then begin
CloseHandle(PI.hThread);
CloseHandle(PI.hProcess);
Application.Terminate;
end;
В дочерней задаче
ProcessID := StrToInt(ParamStr(1));
ProcessHandle := OpenProcess(PROCESS_SET_INFORMATION, false, ProcessID);
WaitForSingleObject(ProcessHandle, INFINITE);
Неждет!
Что не так?



paul_shmakov   (2001-11-16 11:30) [1]

так, скорее всего, родительский процесс уже успевает завершиться. и OpenProcess возвращает nil.



erik   (2001-11-16 13:59) [2]

Нет а Application.Terminate убирал и нехрена неработало!



erik   (2001-11-16 14:21) [3]

Если найдутся грамотные люди может быть подскажут как красиво получить ProcessID родителя? У меня возникло ужастное подозрение, что мой код неработает из за отсутствия SYNCHRONIZE or PROCESS_SET_INFORMATION в OpenProcess. Но SYNCHRONIZE неподерживается в 95-98!
Что делать? Неужели никто незнает!? Я системным програмированием почти незанимаюсь, все по базам данных. Так, что мне простительно незнание этого факта. Кто тут умный отзовись.



erik   (2001-11-16 16:57) [4]

Действительно OpenProcess возвращает ошибку. А что делать? Как мне
подождать завершения породившей задачи.



erik   (2001-11-16 19:25) [5]

Все парни несуетитесь. Я исправил в CreateProcess надо поставить CREATE_DEFAULT_ERROR_MODE! И все.




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.17;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.02 c
3-52514           Turalyon              2001-12-17 10:12  2002.01.17  
Знатокам SQL


1-52554           irq                   2001-12-27 15:29  2002.01.17  
treeview


3-52455           kat                   2001-12-14 09:30  2002.01.17  
Индексы


3-52473           З.Г.                  2001-12-04 07:24  2002.01.17  
Как отключить автоматическое сохранение данных в таблице, т.е. чтобы я мог внести данные и самому выбрать сохранить или не сохранять таблицу


1-52557           AlexBel               2001-12-28 13:12  2002.01.17  
Перемещение фокуса между компонентами