delphi 调用外部exe ,并等待调用程序运行结束  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 调用外部exe ,并等待调用程序运行结束


delphi 调用外部exe ,并等待调用程序运行结束


function TFmain.RunWait(FileName: string; Visibility: Integer): THandle;

var

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

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

  WorkDir: string;

  StartupInfo: TStartupInfo;

  ProcessInfo: TProcessInformation;

begin

  try

        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, nil, nil, false, Create_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, nil, StartupInfo, ProcessInfo) then

            begin

                result := 0;

                Exit;

             end

             else

             begin

      WaitForSingleObject(ProcessInfo.hProcess, INFINITE);

      GetExitCodeProcess(ProcessInfo.hProcess, result);

        end;

    finally

    end;

end;


调用


procedure TFmain.Img_buyClick(Sender: TObject);

var

msg:String;

begin


    Timer1.Enabled := False;


    RunWait('cs_buy.exe',SW_SHOWMAXIMIZED);


    Timer1.Enabled := True;


end;


 


其中 参数   Visibility 取值如下:



行号 参数 含义

1 SW_HIDE                        隐藏这个窗体,并激活其他窗体。

2 SW_MAXIMIZE                最大化指定的窗体。

3 SW_MINIMIZE                 最小化指定的窗体,并按顺序激活最上层的窗体。

4 SW_RESTORE               激活并显示窗体。如果窗体为最小化或者最大化,窗体恢复到原始大

                                          小和置。应用程序当恢复一个最小化的窗体时将指定标记。

5 SW_SHOW                      以当前的大小和位置激活并显示窗体。

6 SW_SHOWDEFAULT

7 SW_SHOWMAXIMIZED    激活并最大化显示窗体。

8 SW_SHOWMINIMIZED     激活并最小化现实窗体。

9 SW_SHOWMINNOACTIVE    最小化窗体,保持其激活状态。

10 SW_SHOWNA                     以当前状态显示窗体,保持其激活状态。

11 SW_SHOWNOACTIVATE   以当前的大小和位置显示窗体,并保持其激活状态。

12 SW_SHOWNORMAL 激活并显示一个窗体。如果窗体为最大化或者最小化,窗体恢复到原始的大小和位置。当窗体第一次显示的时候,应用程序记录标记



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.042951107025146 seconds