Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.034 c
14-1096431982
MBo
2004-09-29 08:26
2004.10.24
Новосибирск. Осенняя встреча.


1-1097131096
Жбан
2004-10-07 10:38
2004.10.24
Механизм работы Application.Terminate


9-1088260037
Proger
2004-06-26 18:27
2004.10.24
Быстрый доступ к пикселам


1-1097232233
Andrey_
2004-10-08 14:43
2004.10.24
Исключение от MaskEdit


1-1097330321
CoolMan
2004-10-09 17:58
2004.10.24
Скрытый поиск по маске с копированием




   Наверх