Здравствуйте TSS, Вы писали:
TSS>Здравствуйте Sergey, Вы писали:
N>>>>>WaitForInputIdle не срабатывает, т.к. работает с процессом, а он "усегда готов!"
S>>>> А WH_FOREGROUNDIDLE не помогает?
N>>>это не одно и тоже? как я понял WaitForInputIdle ((HANDLE)hProcess, INFINITE) срабатывает, когда hProcess как раз становиться в Idle т.е. ждет ввода. WH_FOREGROUNDIDLE будет привязян к потоку/процессу, а мне, скорее, надо к окну.
N>>>Или я чего не понимаю?
S>> Разница в том, что WaitForInputIdle — для процесса (его primary потока), а WH_FOREGROUNDIDLE — для любого потока. Если диалог создается не в основном потоке, может помочь.
TSS>Начнем с того, что WaitForInputIdle работает со всеми потоками процесса, а не только с главным.
Откуда сведения? Если главный поток создал дочерний со своей очередью сообщений, то чего будет ждать WaitForInputIdle — когда обе очереди пустые или любая из них пустая?
TSS>А WH_FOREGROUNDIDLE срабатывает когда "a hook procedure that will be called when the application's foreground thread is about to become idle", т.е. когда активное окно потока выходит на idle.
Что-то я не заметил слова "окно" в английмком тексте

.
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.