用程序来启动exe的....不是手动点击

解决方案 »

  1.   


    ShellExecute(
      hWnd: HWND;        {指定父窗口句柄}
      Operation: PChar;  {指定动作, 譬如: open、print}
      FileName: PChar;   {指定要打开的文件或程序}
      Parameters: PChar; {给要打开的程序指定参数; 如果打开的是文件这里应该是 nil}
      Directory: PChar;  {缺省目录}
      ShowCmd: Integer   {打开选项}
    ): HINST;            {执行成功会返回应用程序句柄; 如果这个值 <= 32, 表示执行错误}
    ShellExecute(Handle, 'open', 'notepad.exe', 'C:\test.Txt', nil, SW_SHOWNORMAL);
    上面'C:\test.Txt'就是传递给程序参数
      

  2.   

    被调用的程序也是delphi写的吗?
    paramcount,paramstr
      

  3.   

    帮助就有啊:
    procedure TForm1.FormCreate(Sender: TObject);
    var
      i: Integer;
      for i := 1 to ParamCount() do
      begin
        if LowerCase(ParamStr(i)) = 'beep' then
          Beep
        else if LowerCase(ParamStr(i)) = 'exit' then
          Application.Terminate;
      end;
    end;
      

  4.   

    EXE文件程序启动的参数传递:
    1、DOS方式(命令行):ASD.exe /? -a -e Enter
    其中/? -a -e就是传递的三个参数
    2、嵌入式(集成命令行):
    ShellExecute(Handle, 'open', 'notepad.exe', 'C:\test.Txt', nil, SW_SHOWNORMAL);
    参数写在C:\test.Txt中。
    3、程序中读取参数值:
    procedure TForm1.FormCreate(Sender: TObject);
    var i: Integer;
      for i := 1 to ParamCount() do
      begin
        ......
      end;
    end;明白了吗。
      

  5.   

    用WinExec ( '程序名', 1);