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

Вниз

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

 
Иксик   (2003-02-25 15:48) [0]

Как запустить внешнюю прогу, при этом получив ее handle? Когда делаю это shellexecute, он не возвращает handle.


 
gsu ©   (2003-02-25 15:52) [1]

createprocess


 
Иксик   (2003-02-25 16:02) [2]

Я то же сначала так подумал, просто решил что shellexecute"ом будет легче :)
Можншь поподробнее про createprocess, как им пользоваться?


 
blackman ©   (2003-02-25 16:06) [3]

например вызвать Notepad:

procedure TForm1.Button1Click(Sender: TObject);
var
si : Tstartupinfo;
p : Tprocessinformation;
begin
FillChar( Si, SizeOf( Si ) , 0 );
with Si do begin
cb := SizeOf( Si);
dwFlags := startf_UseShowWindow;
wShowWindow := 4;
end;
Application.Minimize;
Createprocess(nil,"notepad.exe",nil,nil,false,Create_default_error_mode,nil,nil,si,p);
Waitforsingleobject(p.hProcess,infinite);
Application.Restore;
end;


 
Иксик   (2003-02-25 16:35) [4]


> dwFlags := startf_UseShowWindow;


> Create_default_error_mode


> Waitforsingleobject(p.hProcess,infinite);


А это чего такое?


 
Иксик   (2003-02-25 16:37) [5]

И где там handle?
Я ужасно извиняюсь за тупые вопросы, просто я с этим никогда не работал, а сейчас вдруг срочно понадобилось.


 
gsu ©   (2003-02-25 16:53) [6]

http://www.firststeps.ru/mfc/winapi/r.php?131


 
Иксик   (2003-02-25 16:57) [7]

Ок, все ясно, только почему вот это не работает:

Createprocess(nil,"notepad.exe",nil,nil,false,Create_default_error_mode,nil,nil,si,p);
Waitforsingleobject(p.hProcess,infinite);
GetWindowText(p.hProcess, buff, sizeof(buff));
showmessage(buff) // Показывает пустое сообщение




 
gsu ©   (2003-02-25 17:03) [8]

int GetWindowText(
HWND hWnd, // handle of window or control with text
LPTSTR lpString, // address of buffer for text
int nMaxCount // maximum number of characters to copy
);


 
Иксик   (2003-02-25 17:03) [9]

Вроде разобрался, спасибо большое gsu и blackman


 
gsu ©   (2003-02-25 17:07) [10]

здорово, мне б кто-нить подсказал, хлюп, хлюп, ...



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

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

Наверх




Память: 0.48 MB
Время: 0.013 c
1-17102
AZ
2003-02-24 17:08
2003.03.06
Графический редактор графического компонента


4-17451
Cheboor
2003-01-19 10:45
2003.03.06
Как отследить запуск другого приложения?


1-17143
User
2003-02-21 17:33
2003.03.06
Шифровальшик


1-17049
Song
2003-02-22 06:48
2003.03.06
Автоматическая вставка процедур типа TNotifyEvent


8-17199
BlackSun
2002-11-22 21:45
2003.03.06
Помогите насчет DirectX