Конференция "WinAPI" » как из dll запустить exe файл [D5, WinXP]
 
  • user51 (27.05.10 11:15) [0]
    как из dll запустить exe файл и не дожидатся завершения его работы (запустить и работать дальше). В моей реализации через winexec(namefile,0)) выполнение длл приостанавливается пока не завершит свою работу exe файл.
  • Дмитрий Т (27.05.10 11:22) [1]
    что-то типа того, видимо?

    procedure RunProgram(const aFN: String);
    var
      kStartUpInfo: TSTARTUPINFO;
      kProcessInfo: TPROCESSINFORMATION;
    begin
      FillChar(kStartUpInfo, SizeOf(kStartUpInfo), 0);

      kStartUpInfo.cb := SizeOf(kStartUpInfo);

      if CreateProcess(PChar(aFN), nil, nil, nil, False, 0,
         nil, nil, kStartUpInfo, kProcessInfo) then
      begin
         CloseHandle(kProcessInfo.hProcess);
         CloseHandle(kProcessInfo.hThread);
      end
      else
         MessageDlg('Ошибка при запуске программу установки!', mtError, [mbOK], 0);
    end;



    Писал давно, еще до чтения Рихтера. Но вроде все верно.
  • Leonid Troyanovsky © (27.05.10 11:25) [2]

    > user51   (27.05.10 11:15)  

    > его работы (запустить и работать дальше). В моей реализации
    > через winexec(namefile,0))

    Реализацию - в студию.

    --
    Regards, LVT.
  • Anatoly Podgoretsky © (27.05.10 11:46) [3]
    > user51  (27.05.2010 11:15:00)  [0]

    Что то ты не всю правду говоришь.
  • user51 (27.05.10 11:47) [4]
    Дмитрий Т  
    спасибо работает

    реализация
    winexec(pchar('c:\file.exe'),0);
  • Anatoly Podgoretsky © (27.05.10 12:25) [5]
    > user51  (27.05.2010 11:47:04)  [4]

    Для начала забудь про winexec, это дела давно прошедших дней, когда
    компьютеры были большие, а АПИ маленькое и после 95 года категорически не
    рекомендуется к использованию. Shell Execute наше все.
  • user51 (27.05.10 12:32) [6]
    спасибо уже сделал как подсказали выше
    и установил на прогонку, вроде все работает
  • Игорь Шевченко © (27.05.10 19:50) [7]
    Anatoly Podgoretsky ©   (27.05.10 12:25) [5]


    > после 95 года категорически не
    > рекомендуется к использованию.


    Но работает же
  • Anatoly Podgoretsky © (27.05.10 20:06) [8]
    > Игорь Шевченко  (27.05.2010 19:50:07)  [7]

    Да мало ли что, справка не рекомендует, а к ней стоит прислушаться, кроме
    того ShellExecute имеет большие возможности, не говоря уж об CreateProcess
  • Игорь Шевченко © (28.05.10 10:38) [9]
    Anatoly Podgoretsky ©   (27.05.10 20:06) [8]

    Есть предложение исправить справку
  • Anatoly Podgoretsky © (28.05.10 11:44) [10]
    > Игорь Шевченко  (28.05.2010 10:38:09)  [9]

    Нет, пусть сами думают!
 
Конференция "WinAPI" » как из dll запустить exe файл [D5, WinXP]
Есть новые Нет новых   [134431   +14][b:0][p:0.001]