WinExecAndWait32调用外部程序,等待外部程序运行完成

该日志由 samool 发表于 2007-10-22 9:45 AM



 调用外部程序,等待外部程序运行完成,相当于Showmodal功能,呵呵

delphi代码
  1. function WinExecAndWait32(FileName: string; Visibility: Boolean): integer;   
  2. var  
  3.   zAppName: array[0..512of char//存放应用程序名   
  4.   StartupInfo: TStartupInfo;   
  5.   ProcessInfo: TProcessInformation;   
  6.   exitCode: Dword;   
  7.   aVisibility: integer;   
  8. begin  
  9.   StrPCopy(zAppName, FileName);   
  10.   FillChar(StartupInfo, Sizeof(StartupInfo), #0);   
  11.   //给StartupInfo结构体赋值   
  12.   StartupInfo.cb := Sizeof(StartupInfo);   
  13.   StartupInfo.dwFlags := STARTF_USESHOWWINDOW;   
  14.   if Visibility then  
  15.     aVisibility := 1  
  16.   else  
  17.     aVisibility := 0;   
  18.   
  19.   StartupInfo.wShowWindow := aVisibility;   
  20.   //调用CreateProcess 创建进程,执行指定的可执行文件   
  21.   if not CreateProcess(nil, zAppName, nilnilfalse  
  22.     , CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS   
  23.     , nilnil, StartupInfo, ProcessInfo) then  
  24.     Result := -1  
  25.   else  
  26.   begin  
  27.     //等待可执行文件退出   
  28.     WaitforSingleObject(ProcessInfo.hProcess, INFINITE);   
  29.     //得到进程终止状态码   
  30.     GetExitCodeProcess(ProcessInfo.hProcess, exitCode);   
  31.     result := Exitcode;   
  32.   end;   
  33. end;  

 傻猫网络日志标签:    函数, 程序, 进程, 运行, winexec  tiffany jewelry  
网摘: Yahoo Baidu Google Bolaa 365Key Yesky Wozhai POCO ViVi YouNote Hexun Del.icio.us Yeeyoo igooi I2Key Cn3 Bytemen Furl Blinklist Blogmarks Technorati 分享到饭否
相关文章: (最多只显示5条记录)

Delphi常用的函数库 (浏览:2731, 评论:0)
学习编程人员必读(C++为例) (浏览:1558, 评论:0)
最近都在忙啥呢 (浏览:1890, 评论:0)
无窗体无界面exe怎么做? (浏览:2750, 评论:0)
汇编级超快字符串替换函数 (浏览:2716, 评论:0)
发表评论:( 来了就留个脚印吧!你的参与是我最大的动力!)

    

(单击图片换张图片)