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

Вниз

Какой Exec лучше?   Найти похожие ветки 

 
Vadim S   (2003-09-30 17:35) [0]

var
StartupInfo: TStartupInfo;
ProcessInfo: TProcessInformation;
exitc: cardinal;
begin

1) способ
ShellExecute(Application.Handle,"open",Pchar(FileName),nil,
Pchar(ExtractFileDir(FileName)),SW_SHOWNORMAL);
2) способ
WinExec(Pchar(FileName),sw_SHOW);


3) способ
FillChar(StartupInfo, sizeof(StartupInfo), 0);
with StartupInfo do begin
cb := Sizeof(StartupInfo);
dwFlags := STARTF_USESHOWWINDOW;
wShowWindow := SW_SHOW;
end;
CreateProcess(nil, PChar(RTEXT), nil, nil, false,
CREATE_NEW_CONSOLE or NORMAL_PRIORITY_CLASS, nil, nil,
StartupInfo, ProcessInfo);


Какой способ лучше и чем они отличаются???


 
pasha ©   (2003-10-01 03:18) [1]

WinExec уходит своими корными ещё во время Delphi 1, и сейчас поддерживаэтся с соображений совместимости Delphi 1

ShellExecute это "нормальная" WIN32 ф-ция с расширеным набором параметров(можно указать открыть, редактировать, распечатать обект Windows). Если не нужно указывать какихто спец. параметров, или получить инфу от запускаемого процеса, то ф-ция ShellExecute наилучший вариант.

От ф-ции CreateProcess можно получить вот что:
записать весь консольный вывод процеса в буффер, запустить процесс и дождаться его завершения и так дальше.

Если понадобиться ети достоинства от CreateProcess то мыль на DeveloperUA@ukr.net договоримся. Удачи


 
Германн ©   (2003-10-01 05:10) [2]

Собс-но ответ на сей сабж можно легко прочитать в исходниках Дельфи. В которых видно, что все эти варианты в конце концов приводятся к вызову CreateProcess. Только вот первые два способа ограничены в возможностях.


 
clickmaker ©   (2003-10-01 12:00) [3]

> Германн © (01.10.03 05:10) [2]

Только в исходниках Винды, а не Дельфи :) А откуда они у тебя, кстати ? :)



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
6-79081
beglec
2003-09-29 01:13
2003.11.24
Некоторые изменения в Delphi 7


3-78858
lext
2003-11-03 16:34
2003.11.24
Уточняю вопрос Каким образом сделать ввод строк в DBGrid с автопр


14-79144
MonStar
2003-10-31 10:08
2003.11.24
Помогите: кто будучи студентом писал диплом на DELPHI?


3-78857
Andrey000
2003-11-03 11:56
2003.11.24
Помогите с ADO не освобождается память


6-79082
Sergioly
2003-09-28 03:02
2003.11.24
Как осуществить копирование файлов с другого компьютера?