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

Вниз

WaitForSingleObject с перерисовкой вызвавшего приложения   Найти похожие ветки 

 
П7   (2004-10-08 11:37) [0]

Уважаемые Мастера!
У меня сейчас одна прога (1) вызывает на выполение вторую (2). Вызывает и далее WaitForSingleObject, пока не произойдёт закрытие 2. Т.к. 1 никак не реагирует на нажатия мыши (это нужно) и не перерисовывается (это НЕ нужно), то мне приходится минимизировать её.
Есть ли способ заставить вызвавшую программу 1 принудительно перерисовываться, но всё так же не реагировать на всякие манипуляции, типа перетаскивания, ввода и пр?


 
Reindeer Moss Eater ©   (2004-10-08 11:38) [1]

В документации настоятельно не рекомендуется вызывать функции ожидания в оновном потоке GUI приложения.


 
Суслик ©   (2004-10-08 11:44) [2]

1) Запускай и ожидай в доп. потоке.
2) Можешь также попробовать использовать MsgWaitForMultipleObjects. И реагировать на определенный события.


 
Семен Сорокин ©   (2004-10-08 11:51) [3]

3) сделать цикл ожидания вручную, с проверкой наличия запущенного процесса в списке процессов.


 
Romkin ©   (2004-10-08 11:53) [4]

ТАм последний параметор в wait - TIMEOUT. Ставь полсекунды, и давай repaint формы, в цикле, если, конечно, именно время кончилось, а не процесс :)


 
Romkin ©   (2004-10-08 11:53) [5]

ТАм последний параметор в wait - TIMEOUT. Ставь полсекунды, и давай repaint формы, в цикле, если, конечно, именно время кончилось, а не процесс :)


 
Romkin ©   (2004-10-08 11:54) [6]

     while WaitForSingleObject(pi.hProcess, 1000) = WAIT_TIMEOUT do
       Update;


 
ssk ©   (2004-10-08 11:56) [7]

var
 p : TProcessInformation;

while WaitForSingleObject(p.hProcess, 50) = WAIT_TIMEOUT do
   Application.ProcessMessages;


 
Polevi ©   (2004-10-08 12:26) [8]

MsgWaitForMultipleObjects


 
П7   (2004-10-08 13:37) [9]

Спасибо, буду пробовать. (:



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
6-1092719789
Duka
2004-08-17 09:16
2004.10.24
Локальная сеть


14-1096630008
Delirium
2004-10-01 15:26
2004.10.24
Читаем подпись под фотографией


3-1096090773
SergeyM
2004-09-25 09:39
2004.10.24
Поиск с фильтром в компонентах ADO


3-1096028098
Плюс
2004-09-24 16:14
2004.10.24
Как установить BDE?


14-1096885377
It06
2004-10-04 14:22
2004.10.24
HELP