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

Вниз

Как отследить окончание созданного процесса   Найти похожие ветки 

 
ilysha ©   (2002-04-11 10:46) [0]

Суть - есть многостраничный редактор.
Открываем в нем файл, что-то делаем и затем вызываем другую программу редактирования и передаем ей этот файл.
Проблема такова - я создаю процесс:
CreateProcess(nil, PChar(Editor+ " "+ OpenFileName), nil, nil, false, NORMAL_PRIORITY_CLASS, nil, nil, StartupInfo, ProcessInfo);

Мне нужно заблокировать доступ к этому файлу до тех пор, пока не будет закрыт созданный процесс.
Какой способ можно применить, если я заранее не знаю, какая программа будет запущена - Word, Notepad или Photoshop.

Из справки я знаю, что многое можно узнать из ProcessInfo, но как это сделать?


 
Alx2 ©   (2002-04-11 10:55) [1]

Посмотри WaitForSingleObject(ProcessHandle, INFINITE)


 
ilysha ©   (2002-04-11 11:34) [2]

Спасибо - то, что надо.
Возникает другой вопрос - я предлагаю пользователю возможность принудительно остановить процесс и для этого использую TerminateProcess. Но это не дает процессу сохранить внесенные в файл изменения.
Как здесь быть?


 
Виктор Щербаков ©   (2002-04-11 11:38) [3]

Отправляй в главное окно запущенного приложения WM_CLOSE.
Появится окошко с вопросом сохранять/не сохранять.
Но вот определить, какое окно является "главным" не просто.


 
panov ©   (2002-04-11 11:38) [4]

>ilysha © (11.04.02 11:34)
Посылай второму приложению сообщение WM_CLOSE.



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

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

Наверх




Память: 0.47 MB
Время: 0.016 c
1-80972
Jony
2002-04-12 09:55
2002.04.25
Где разместить ЕХЕ-шник?


1-80878
Демон
2002-04-14 10:47
2002.04.25
HELP!!! JPEG в BMP


1-80869
lipskiy
2002-04-13 14:43
2002.04.25
Как по простому выявить неиспользуемый в программе код?


3-80792
koks
2002-04-04 12:30
2002.04.25
ADO -> Access 2000 ????


1-80905
Sound
2002-04-15 02:08
2002.04.25
HTTP запроc. хто нить Help!