Вниз
Скачать: 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.01 c
3-76765
Aleksandr
2003-04-08 15:05
2003.04.24
Есть ли альтернативные способы сброса таблицы MSSQL в Paradox?


4-77244
LeReve
2003-02-25 10:19
2003.04.24
как сделать полупрозрачное окно с помощью АПИ 2000-го(XP)???


1-76935
Roller
2003-04-15 11:45
2003.04.24
Подмена функции DLL


1-76968
tytus
2003-04-12 23:53
2003.04.24
new style


1-76976
Alexander1966
2003-04-11 16:12
2003.04.24
Delphi-йский аналог объявленных констант C++Builder




   Наверх