CreateProcess中的参数设置问题(10分)

  • 主题发起人 主题发起人 wubo830814
  • 开始时间 开始时间
W

wubo830814

Unregistered / Unconfirmed
GUEST, unregistred user!
帮我看一下这段代码,我想让外部程序执行完再向下执行,但是,没有控制住,在调用外部程序的时候就向下执行了,为什么?,是CreateProcess中的参数设置有问题吗
function TFormSoft.ExeWait(UnIn: String): Boolean;
//执行卸载并等待
var
SUInfo: TStartupInfo;
PRInfo: TProcessInformation;
begin
Result:=False;
FillChar(SUInfo, SizeOf(SUInfo), CHR(0));
SUInfo.cb:=SizeOf(SUInfo);
SUInfo.dwFlags:=STARTF_UsesTDHandles or STARTF_USESHOWWINDOW;
SUInfo.wShowWindow:=SW_SHOW;
Result:=CreateProcess(nil,PChar(UnIn),nil,nil,False,NORMAL_PRIORITY_CLASS,nil,nil,SUInfo,PRInfo);
if Result then
WaitForSingleObject(PRInfo.hProcess,INFINITE);
end;
 
大哥们,帮帮忙吧,
 
.....你确定CreateProcess的返回结果为true进入了WaitForSingleObject部分?
 
问题找到了,是这个外调程序很快有激活了另一个程序,谢谢你。
 

Similar threads

后退
顶部