我在一个应用程序中要频繁调用了另一个应用程序(X.exe),只有第一次调用时,X.exe能弹出,以后调用时就不能弹出了.

解决方案 »

  1.   

    示例:
    procedure TForm1.Button1Click(Sender: TObject);
    var hWnd1: HWND;
    begin
      //WinExec(PChar('F:\Delphi6\Projects\Bin1Clt.exe'),SW_MINIMIZE);
      //WinExec激活未运行程序
      hWnd1 := FindWindow(Nil,PChar('Bin_Client')); //'Bin_Client'是外部程序的Title
      if hWnd1<>0 then
      begin
        ShowMessage('程序已运行,下面的程序将显示它。');
        ShowWindow(hWnd1,SW_SHOW);//SW_SHOW参数根据具体需要可以改,参看SDK文档
      end;
    end;
      

  2.   

    我也是用的
    ShowWindow(hWnd1,SW_SHOW);
    但窗口就是不出来.
      

  3.   

    那你改为:
    ShowWindow(hWnd1,SW_SHOWDEFAULT);
    OK了吧!