Вниз
Скачать: CL | DM;

запуск программы из своей с контролем   Найти похожие ветки 

← →
igorbuz ©   (2003-02-23 04:42) [0]

Подскажите, как запустив программу из своей программы, убедиться что она запущена и выполняется. Т.е. тот момент когда она уже загрузилась и начала работать. Спасибо заранее!


← →
Song ©   (2003-02-23 09:54) [1]

WaitForInputIdle()


← →
Alexandr B.   (2003-02-23 10:02) [2]

function EnumWindowsProc(hWindow : hWnd;
lParam : LongInt) : Bool
{$IFDEF Win32} stdcall; {$ELSE} ; export; {$ENDIF}
begin
Result := True;
if IsWindowVisible(hWindow) then
begin
SetWindowText(hWindow,"test");
result := false;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var si:STARTUPINFO;
pi:PROCESS_INFORMATION;
begin
ZeroMemory(@si,sizeof(si));
si.cb:=SizeOf(si);

CreateProcess(nil,
"notepad.exe"
,nil,nil,false,NORMAL_PRIORITY_CLASS,nil,nil,si,pi);
CloseHandle(Pi.hThread);
WaitForInputIdle(pi.hProcess,INFINITE);
CloseHandle(Pi.hProcess);
EnumThreadWindows(pi.dwThreadId,@EnumWindowsProc,0);
end;


← →
igorbuz ©   (2003-02-23 16:07) [3]

Спасибо огромное! Буду пробовать!


← →
Diamond Cat ©   (2003-02-24 00:56) [4]

добавляю к Song что для начала CreateProcess а уж далее WaitForInputIdle


← →
Song ©   (2003-02-24 05:15) [5]

2Diamond Cat © (24.02.03 00:56)
:)
Не обязятельно CreateProcess, можно и ShellExecuteEx()
Главное нужно узнать идентификатор процесса.
С праздником.


← →
igorbuz ©   (2003-02-24 16:14) [6]

спасибо всем!
с праздником!


← →
Diamond Cat ©   (2003-02-24 17:25) [7]

согласен, но это уже частности


← →
igorbuz ©   (2003-02-25 04:24) [8]

2 Alexander B., Diamond Cat & Song
работает прекрасно, спасибо всем еще раз огромное!
использовал в кач. основы текст Alexandra B. (см.), скажите а зачем там следующее:
CloseHandle(Pi.hThread);
и
CloseHandle(Pi.hProcess);
?


← →
Diamond Cat ©   (2003-02-25 22:59) [9]

попробуй запусти раз двадцать (или более) эту программу без эитх строк и проверь ресурсы системы , состояние конечно не плачевное но они падают


← →
igorbuz ©   (2003-02-27 16:02) [10]

я примерно так и думал. спасибо за прояснение!



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.011 c
1-76883
default
2003-04-12 03:10
2003.04.24
---|Ветка была без названия|---


1-76981
Вадим
2003-04-08 18:30
2003.04.24
Количесвто видимых строк


1-77007
Mop
2003-04-14 04:04
2003.04.24
TTreeView - правая кнопка


14-77092
Pitay
2003-04-07 07:59
2003.04.24
String to Char


1-77003
Spartak
2003-04-14 10:02
2003.04.24
как из строки с путём к файлу получить расширение файла ?




   Наверх