Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.03;
Скачать: CL | DM;

Вниз

CreateProcess, ShellExecute, WinExec   Найти похожие ветки 

 
balepa ©   (2006-04-04 14:38) [0]

Есть ли какая-то разница между этими функциями в рамках моей задачи: Нужно просто запустить .exe"шник и передать туда commandline. В данный момент использую WinExec (руководствовался тем что у нее параметров меньше чем у всех остальных :)).


 
Сергей М. ©   (2006-04-04 14:41) [1]

В рамках твоей задачи разницы никакой нет.


 
balepa ©   (2006-04-04 14:45) [2]


> Сергей М. ©   (04.04.06 14:41) [1]

thx
А то я весь изнервничался :)
В скорости запуска приложения (.exe"шника)  ?


 
Джо ©   (2006-04-04 14:49) [3]

Скорость самого запуска — величина крайне несущественная, чтобы о ней задумываться ;)


 
balepa ©   (2006-04-04 14:51) [4]


> Джо ©   (04.04.06 14:49) [3]

Когда как.


 
Джо ©   (2006-04-04 15:11) [5]

> [4] balepa ©   (04.04.06 14:51)
> Когда как.

А когда не "как"? Обе функции все равно, очевидно, вызывают один и тот же загрузчик исполнимых файлов. А функции эти не более чем интерфейс к нему.


 
Leonid Troyanovsky ©   (2006-04-04 15:20) [6]


> Джо ©   (04.04.06 15:11) [5]

> А когда не "как"? Обе функции все равно, очевидно, вызывают
> один и тот же загрузчик исполнимых файлов. А функции эти


WinExec делает еще WaitForInputIdle, IMHO.

--
Regards, LVT.


 
Джо ©   (2006-04-04 16:39) [7]

Да, возможно, я поторопился с выводами. Действительно, CreateProcess не ждет полной инициализации процесса. А WinExec дожидается выполнения GetMessage в создаваемом процессе. Иногда, наверное, это может оказаться существенным.


 
Zhekacoder   (2006-05-07 20:20) [8]

Ну после CreateProcess можно еще WaitForSingleObject Добавить


 
Dstr ©   (2006-05-07 21:11) [9]

По-любому вызов любой функции приведет к одной(Например, CreateProcessA,использующая Ansii код,перегоняет все к ТолстойСтроке(WideChat)и вызывает в свою очередь CreateProcessW,CreateProcessW в свою очередь вызывает ряд функций из NativeApi выполняя необходимые преобразования,заполняя StartupInfo и тд,и вызывает опять же из NativeApi какуе нить функцию запуска ексешника,а NativeApi мош вызовет эшо ченить, и так фсе функции WinApi а про не Api(Делфийные и тд) ваще запарешся говорить


 
Sibiryak ©   (2006-05-11 16:42) [10]

Прошу прощения за вторжение. Не могу решить задачу. Нужно запускать экзешник с кучей динамических параметров, которые зависят от результатов действий программы ранее. Т.е. четко строку типа "c:\program.exe" я для функции WinExec сформировать не могу. А при подстановке переменной string , содержащей путь к файлу и текущие параметры в WinExec не дает результата по причине несовместимости string и AnsiChar. Как быть? Подскажите плиз...


 
Сергей М. ©   (2006-05-11 17:00) [11]


> Как быть?


Привести тип string к типу PAnsiChar.

var
 PAnsiCharData: PAnsiChar;
 StringData: String;

..
 PAnsiCharData := PAnsiChar(StringData);


 
Eraser ©   (2006-05-11 23:46) [12]


> Zhekacoder   (07.05.06 20:20) [8]
>
> Ну после CreateProcess можно еще WaitForSingleObject

эт не то.. WaitForSingleObject с аргументом - дескриптором процесса, ждёт завершение работы этого самого процесса.


 
balepa ©   (2006-05-12 15:05) [13]


> Zhekacoder   (07.05.06 20:20) [8]

А при чем тут ?



Страницы: 1 вся ветка

Текущий архив: 2006.09.03;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.076 c
1-1153480564
МикроДИП
2006-07-21 15:16
2006.09.03
Вопрос по расположению формы...


6-1145269349
vcj
2006-04-17 14:22
2006.09.03
Delphi 7 + PHP 4-5


2-1155486914
fog
2006-08-13 20:35
2006.09.03
Координаты курсора


15-1154948534
Dimedrol
2006-08-07 15:02
2006.09.03
FullText поиск в MySQL


9-1134733120
julai
2005-12-16 14:38
2006.09.03
Статьи по OpenGL