Вниз
Скачать: CL | DM;

Прога, запущенная этим кодом, освободит память, когда завершится?   Найти похожие ветки 

 
AL2002 ©   (2002-11-06 12:37) [0]

Var
StartupInfo: TStartupInfo;
PI: TProcessInformation;

begin
FillChar(StartupInfo,Sizeof(StartupInfo),#0);
StartupInfo.cb:=Sizeof(StartupInfo);
StartupInfo.dwFlags:=STARTF_USESHOWWINDOW;
StartupInfo.wShowWindow:=0;
//CreateProcess(NiL, "C:\Appl\ZipMagic4\ZM32.EXE", Nil, Nil, FALSE, IDLE_PRIORITY_CLASS, Nil, Nil, si, pi);
CreateProcess(NiL, "C:\SuperProg\SuperProgItself.exe", Nil, Nil, FALSE, IDLE_PRIORITY_CLASS, Nil, "", StartupInfo, pi);
end;


 
Skier ©   (2002-11-06 12:40) [1]

>AL2002
Динамического выделения памяти нет, значит - ДА.


 
KoluChi ©   (2002-11-06 12:44) [2]

Вообщето когда программа завершается, то она удаляется из памяти, но если тебе этого не достаточно, то допиши следующее:
WaitForSingleObject(PrInfo.hProcess, INFINITE);
CloseHandle(PI.hProcess);
CloseHandle(PI.hThread);


 
Song ©   (2002-11-06 12:46) [3]

Я думаю CloseHandle() надо сделать. Дельфи сейчас под рукой нет, так бы точно сказал.


 
Skier ©   (2002-11-06 12:51) [4]

>AL2002
The created process remains in the system until all threads within the process have terminated and all handles to the process and any of its threads have been closed through calls to CloseHandle. The handles for both the process and the main thread must be closed through calls to CloseHandle

Судя по всему CloseHandle - нужен. Был не прав...


 
AL2002 ©   (2002-11-06 13:02) [5]


> KoluChi © (06.11.02 12:44)
> Вообщето когда программа завершается, то она удаляется
> из памяти, но если тебе этого не достаточно, то допиши
> следующее:
> WaitForSingleObject(PrInfo.hProcess, INFINITE);
> CloseHandle(PI.hProcess);
> CloseHandle(PI.hThread);

Ты хочешь сказать, что прога будет ждать, пока внешний процесс не завершится? Если да, то это классно. Это то, что мне и нужно. Это так?


 
KoluChi ©   (2002-11-06 13:12) [6]

ДА


 
AL2002 ©   (2002-11-06 13:26) [7]


> KoluChi © (06.11.02 13:12)
> ДА

Ага. Точно. Правда, прога дико подвисает после закрытия процесса, но всё равно козырно. :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.022 c
3-59010
Евген
2002-10-28 17:46
2002.11.18
Присвоение значения для поля с автоинкрементом


1-59212
Sergic
2002-11-06 14:14
2002.11.18
создание собственных типов при использовании COM


14-59357
DJ LLL
2002-10-29 19:45
2002.11.18
BDE


1-59172
Fredegar
2002-11-09 11:45
2002.11.18
Подскажите как дизассемблировать старую прогу (Clipper)


3-59070
dias
2002-10-30 16:38
2002.11.18
Мастера подскажите как передать параметр в SP




   Наверх