Frees the memory allocated by ProcessInitialize for a process specified by its handle, hProc.
Kernel.bdh
ProcessFree( in hProc : number ): boolean;
true if successful
false in the case of errors. The GetLastError function may be used to retrieve system error code.
Parameter | Description |
---|---|
hProc | The handle that identifies the process. It is returned by the ProcessInitialize function. |
dcltrans transaction TMain var hFile : number; hProcessId : number; nStatus : number; nRead : number; sData : string; begin // Create process and start it up... hProcessId := ProcessInitialize("application1.exe", PROCESS_DETACHED, "", "c:\\temp\\", "c:\\temp\\out.txt"); ProcessSetEnv(hProcessId, "temp","c:\\temp\\"); ProcessStart(hProcessId); // Wait for process to finish Wait(25.0); // Kill the process if it hasn't finished yet nStatus := ProcessGetState(hProcessId); if (nStatus <> PROCESS_STATE_FINISHED) then ProcessKill(hProcessId, PROCESS_KILLSINGLE); end; // Read the output of the process, written to a file FOpen(hFile, "c:\\temp\\out.txt", OPT_FILE_ACCESS_READ, OPT_FILE_OPEN); while FRead(hFile, sData, 1, nRead) do Write(sData); end; FClose(hFile); ProcessFree(hProcessID); end TMain;