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

Вниз

Запуск стороннего приложения   Найти похожие ветки 

 
Ламот   (2006-04-04 14:14) [0]

Добрый день, подскажите пож., необходимо запустить "чужое" приложение, дождаться пока оно отработает (будет закрыто пользователем) и продолжить выполнение своей программки... если мне не изменяет память - была когда-то соответствующая функция, которой в качестве параметров передовался путь к приложению и флаги (в том числе - ждать)... ежелить такие функции есть - напомните пож. как они звучат (называются).
Зарание пасиба! ))


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

Среди стандартных ф-ций в составе Делфи таковых нет.

Запуск :

CreateProcess()
ShellExecute()

Ожидание :

WaitForSingleObject(), MsgWaitForMultipleObujects()


 
Ламот   (2006-04-04 14:24) [2]

2 Сергей М. © - дякую! вопросов больше не имеем! )))


 
Ламот   (2006-04-05 17:41) [3]

... поторопился с выводами...
объясните пож.
1. ShellExecute() по моему должен возвращать хендл запущенного приложения или код ошибки, так?!
2. что такое 42 — это значение, которое возвращает мне ShellExecute(), когда отрабатывает без ошибки...
3. итого, мне нужно запустить приложение и получить его хендл, с createprocess - не разобрался (параметров там слишком много), WinExec - тоже хендла не возвращает... в какую сторону рыть?!
Извените если чересчур сумбурно получилось! ))


 
MBo ©   (2006-04-05 17:48) [4]

в FAQ есть пример для CreateProcess


 
Khim ©   (2006-04-05 19:08) [5]

var
h: hwnd;
begin
if findwindow("nil","заголовок окна")<>0 then
h:=findwindow("nil","заголовок окна")<>0 then
h-хендл твоего окна


 
TUser ©   (2006-04-05 19:33) [6]

procedure RunAndWait;
var
{$ifdef fpc}
  PI:_PROCESS_INFORMATION;
  SI:STARTUPINFO;
{$else}
  SI: _STARTUPINFOA;
  PI: _PROCESS_INFORMATION;
{$endif}
begin
  FillChar(SI, sizeof(SI), #0);
  SI.cb:=sizeof(SI);
  FillChar(PI, sizeof(PI), #0);
  CreateProcess(nil,PAnsiChar(Command),nil,nil,false,0,nil,nil,SI,PI);
  WaitForSingleObject(PI.hProcess,INFINITE);
end;


 
Anatoly Podgoretsky ©   (2006-04-05 20:04) [7]

Khim ©   (05.04.06 19:08) [5]
h:=findwindow("nil","заголовок окна")<>0 then

А это что такое, хочешь сказать, что Дельфи это съест?


 
Ламот   (2006-04-06 09:25) [8]

2 MBo © - от теперь точно ОНО, пасиба! )))
2 Khim © - пасибо за участие...
2 TUser © - Ого! первый раз вижу подобные кострукции в Var"e... ща буду пробовать! )))

В общем рискну: всем еще раз пасиба, вопрос... "прикрыт", как минимум до появления новых! :))


 
Ламот   (2006-04-06 11:35) [9]

Надеюсь я не сильно надоел? ))
Еще вопрос — как можно прочитать параметры, передаваемые моей программе из командной строки?


 
Leonid Troyanovsky ©   (2006-04-06 11:50) [10]


> Ламот   (06.04.06 11:35) [9]

> Еще вопрос — как можно прочитать параметры, передаваемые
> моей программе из командной строки?


ParamStr

--
Regards, LVT.


 
Ламот   (2006-04-06 11:54) [11]

2 Leonid Troyanovsky © - Дякую, пробую... ))


 
Desdechado ©   (2006-04-06 12:12) [12]

с запускателями есть еще нехрошая фича - 16-битные программы очень тяжело отследить, дышит он а или уже отдышалась, ибо запускаются через ntvdm


 
Ламот   (2006-04-06 15:22) [13]

2 Desdechado © - ого! надеюсь я таких запускать не стану...! )))



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

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

Наверх




Память: 0.49 MB
Время: 0.048 c
15-1143810430
Dimodim
2006-03-31 17:07
2006.04.23
Спам , методы борьбы со спамом


15-1144093886
Petr V. Abramov
2006-04-03 23:51
2006.04.23
Oracle 10 Release 2


2-1144415556
mfender
2006-04-07 17:12
2006.04.23
Узнать координаты курсора мыши у Parent a


1-1142636370
herki
2006-03-18 01:59
2006.04.23
делфя выдаёт ошибку при внесении формулы в ексэль


15-1143492305
Climber
2006-03-28 00:45
2006.04.23
Написание собственной базы данных