呵呵呵呵呵

萝莉有三好,柔体 轻音 易推倒。女神有三宝,干嘛 呵呵 去洗澡。宅男有三好:Dota 基友 破电脑。


CreateProcess 调用外部程序并等待其结束

CreateProcess 调用外部程序并等待其结束

程序源码 :
首先定义以下变量
var sInfo : TStartupInfo;
pInfo : TProcessInformation;
cmdLine : String;
exitCode : Cardinal;
// 下面是调用过程
cmdLine := c:\winnt\notepad.exe;
FillChar(sInfo,sizeof(sInfo),#0);
sInfo.cb := SizeOf(sInfo);
sInfo.dwFlags := STARTF_USESHOWWINDOW;
sInfo.wShowWindow := SW_NORMAL;

if not CreateProcess(nil,pchar(cmdLine),nil,nil,false,CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, nil, sInfo, pInfo) then
MessageBox(Application.handle,指定程序启动失败!,错误,MB_OK or MB_ICONSTOP)
else
begin
WaitForSingleObject(pInfo.hProcess,INFINITE);
GetExitCodeProcess(pInfo.hProcess,exitCode);
end;

程序讲解 :
最主要是两个Windows API : CreateProcess和WaitForSingleObject. CreateProcess是用来启动进程的函数, 进程启动后, 会填写TProcessInformation这个结构, 而WaitForSingleObject的作用就是等待指定句柄的进程结束或超时. 关于这两个API的参数请参考Win32的说明.

更多内容:

漫威电影宇宙电影下载地址
好钢用在刀刃上,编程用在把妹上:数据库程序员情书
好钢用在刀刃上,编程用在把妹上:VB 程序员情书
好钢用在刀刃上,编程用在把妹上:C++程序员的情书
好钢用在刀刃上,编程用在把妹上:Java 程序员的情书

本文链接地址:http://www.hehehehehe.cn/i/702.html