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

Вниз

Как проследить закрытие 2 программы из 1 программы.   Найти похожие ветки 

 
James1981Bond ©   (2003-12-12 20:28) [0]

У меня есть две программы, написанных мной, первая на Delphi,
а вторая на C++Builder, из первой я запускаю вторую функцией
ShellExecute. После запуска 2 программы я блокирую работу с 1
программой, а чтобы разблокировать мне надо проследить закрытие
2 программы. Как это проследить? (Если можно примерчик, небольшой)
Благодарю заранее!!!


 
Zhirnov Maxim ©   (2003-12-12 20:39) [1]

На счёт ShellExecute не знаю (не пробовал никогда), но вот как это можно сделать через "ручное" создание процессов.
----------------
var
pStartupInfo: StartupInfo;
pProcessInformation: Process_Information;
begin
pStartupInfo.cb := SizeOf( StartupInfo );
pStartupInfo.lpReserved := nil;
pStartupInfo.lpDesktop := nil;
pStartupInfo.lpTitle := nil;
pStartupInfo.dwFlags := STARTF_USESHOWWINDOW;
pStartupInfo.wShowWindow := SW_SHOWDEFAULT;
pStartupInfo.cbReserved2 := 0;
pStartupInfo.lpReserved2 := nil;

If not CreateProcess( PChar( Edit1.Text ), nil, nil, nil, True,
CREATE_DEFAULT_ERROR_MODE, nil, nil, pStartupInfo,
pProcessInformation ) then
MessageBox( Handle, PChar( IntToStr( GetLastError ) ), "Код ошибки", MB_IconError)
Else
begin
WaitForSingleObject( pProcessInformation.hProcess, Infinite );
CloseHandle( pProcessInformation.hProcess );
end;
----------------
В Edit1.Text должен быть путь к EXE"шнику.
Infinite означает, что пока не завершиться запущенный процесс, процесс запустивший будет "висеть" вечно.


 
James1981Bond ©   (2003-12-13 00:12) [2]

Спасибо за ответ. Все получилось.
У меня еще вопрос:
Можно ли запустить из первой программы вторую и открыть сразу определенное дочернее окно второй программы?


 
James1981Bond ©   (2003-12-13 12:44) [3]

Можно ли запустить из первой программы вторую и открыть сразу определенное дочернее окно второй программы?



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
8-86460
Mishel
2003-08-28 10:19
2003.12.26
CreateDIBSection - 8 бит - палитра ?


1-86388
Dim!S
2003-12-15 08:10
2003.12.26
TDBGridEh и checkbox и расцветка строк


1-86337
bober
2003-12-12 16:39
2003.12.26
run-time


9-86241
MeF88
2003-05-31 08:05
2003.12.26
Вечный вопрос: мировые и оконные координаты OpenGl


14-86549
R
2003-12-02 04:16
2003.12.26
Delphi 5 Standart