读书人

为何关闭另一进程后仍然能检测到句柄

发布时间: 2012-09-14 23:00:48 作者: rapoo

为什么关闭另一进程后,仍然能检测到句柄?
程序用于A进程 关闭 B进程,如下代码中,vProcessID 是B进程的PID,关闭B进程后,openprocess的返回值AHandle始终不为0,请问是什么原因,该如何通过vProcessID 来检测进程已经被关闭了?


Delphi(Pascal) code
          repeat              AHandle := OpenProcess(PROCESS_TERMINATE or PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, False, vProcessID);              if AHandle<>0 then              begin                GetExitCodeProcess(AHandle,exitcode);                terminateprocess(AHandle,exitcode);                            end;          until AHandle=0;


[解决办法]
枚举所有进程检查
[解决办法]
探讨
引用:

你改成这样试试:
Delphi(Pascal) code
AHandle := OpenProcess(PROCESS_TERMINATE or PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, False, vProcessID);
if AHandle <> 0 then
begin
repeat
Ter……
……

读书人网 >.NET

热点推荐