你的位置:编程库 >> 资讯 >> Delphi >> 程序应用 >> 详细内容 在线投稿

如何运行一个程序直到它结束

发布: 2008-6-26 20:33 |  作者: admin |   查看: 15次

width="84%">如何运行一个程序直到它结束

function WinExecAndWait32(FileName:String; Visibility :

integer):integer;

var

zAppName:array[0..512] of char;

zCurDir:array[0..255] of char;

WorkDir:String;

StartupInfo:TStartupInfo;

ProcessInfo:TProcessInformation;

begin

StrPCopy(zAppName,FileName);

GetDir(0,WorkDir);

StrPCopy(zCurDir,WorkDir);

FillChar(StartupInfo,Sizeof(StartupInfo),#0);

StartupInfo.cb := Sizeof(StartupInfo);

StartupInfo.dwFlags := STARTF_USESHOWWINDOW;

StartupInfo.wShowWindow := Visibility;

if not CreateProcess(nil,

zAppName,

{ pointer to command line string }

nil,

{ pointer to process security attributes }

nil,

{ pointer to thread security attributes }

false,

{ handle inheritance flag }

CREATE_NEW_CONSOLE or

{ creation flags }

NORMAL_PRIORITY_CLASS,

nil,

{ pointer to new environment block }

nil,

{ pointer to current directory name }

StartupInfo,

{ pointer to STARTUPINFO }

ProcessInfo) then Result := -1 { pointer to PROCESS_INF }

else begin

WaitforSingleObject(ProcessInfo.hProcess,INFINITE);

GetExitCodeProcess(ProcessInfo.hProcess,Result);

end;

end;

打印 | 收藏此页 |  推荐给好友 | 举报
上一篇 下一篇
 

评分:0

发表评论
查看全部回复【已有0位网友发表了看法】