WinExec, ShellExecute
От: Levin_610  
Дата: 20.07.06 12:06
Оценка:
Мне надо, сделать так, чтобы я запускал из своей программы другую программу с /install в командной строке возможно это сделать?
что лучше использовать и как реализовать?
Re: WinExec, ShellExecute
От: ekamaloff Великобритания  
Дата: 20.07.06 12:15
Оценка:
Здравствуйте, Levin_610, Вы писали:

L_>Мне надо, сделать так, чтобы я запускал из своей программы другую программу с /install в командной строке возможно это сделать?

L_>что лучше использовать и как реализовать?

Дело вкуса. Поскольку WinExec позиционируется как устаревшая и оставленная лишь для совместимости с 16-бит ( ) windows, то лучше наверное ShellExecute. Если еще потребуется дожидаться окончания того процесса, то ShellExecuteEx или CreateProcess
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
Re: WinExec, ShellExecute
От: Danchik Украина  
Дата: 20.07.06 12:19
Оценка:
Здравствуйте, Levin_610, Вы писали:

L_>Мне надо, сделать так, чтобы я запускал из своей программы другую программу с /install в командной строке возможно это сделать?

L_>что лучше использовать и как реализовать?

WinExec устаревшая функция — забываем о ней.
ShellExecute — вполне подходит
ShellExecuteEx — более расширенная, можна подождать завершения запущенной программы и многое другое.
CreateProcess — от нее все ноги и растут. Все выше перечисленные функции используют ее для запуска процеса. Поищите в этом форуме и найдете кучу примеров как ее запускать.
Re: WinExec, ShellExecute
От: ekamaloff Великобритания  
Дата: 20.07.06 12:20
Оценка:
Здравствуйте, Levin_610, Вы писали:

L_>и как реализовать?


ShellExecute(0, 'open', '<exe-file-path>', '/install', nil, SW_SHOWNORMAL);
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde
Re[2]: WinExec, ShellExecute
От: Levin_610  
Дата: 20.07.06 13:32
Оценка:
Здравствуйте, ekamaloff, Вы писали:

E>Здравствуйте, Levin_610, Вы писали:


L_>>и как реализовать?


E>
E>ShellExecute(0, 'open', '<exe-file-path>', '/install', nil, SW_SHOWNORMAL);
E>

спасибо, всё получилось
Re: WinExec, ShellExecute
От: Warstone  
Дата: 20.07.06 15:11
Оценка:
Здравствуйте, Levin_610, Вы писали:

L_>Мне надо, сделать так, чтобы я запускал из своей программы другую программу с /install в командной строке возможно это сделать?

L_>что лучше использовать и как реализовать?


procedure Run(FileName:string);
var
  Si:_STARTUPINFOA;
  Pi:PROCESS_INFORMATION;
  s,s2:string;
begin
  GetStartupInfo(Si);
  s:=ExtractFileDir(FileName);
  s2:=FileName;
  CreateProcess(nil,PChar(s2),nil,nil,false,0,nil,PChar(s),Si,Pi);
end;


Далее:

Run("program.exe /install");
Или чего ещё хочется.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.