T
terrace
Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序中创建了一进程,代码如下:<br>var <br>dWORD;<br>lSI:tStartupInfo;<br>lPI:tProcessInformation;<br>begin<br> ZeroMemory(@lSI,sizeof(lSI)) ;<br> lSI.cb := SizeOf(lSI);<br> lSI.dwFlags := STARTF_USESHOWWINDOW;<br> lSI.wShowWindow := SW_SHOWNORMAL;<br> CreateProcess(nil,PChar('c:/func/project1.exe'),nil,nil,false,0,nil,nil,lSI,lPI);<br> WaitforSingleObject(lpi.hProcess,10000);<br> GetExitCodeProcess(lpi.hProcess,d);<br>end;<br>在进程程序c:/func/project1.exe中只有一个main(),定义为function型,返回类型为DWORD(我期望把此值传给GetExitCodeProcess中的第二个参数),但运行到GetExitCodeProcess(lpi.hProcess,d);后d为0,即没有成功取得需要的值,我为了测试,让进程程序死循环,这时d=259,即为STILL_ACTIVE,即此状态返回成功。究竟问题出在哪里呢???