Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Системное программирование и WinAPI > Узнать когда отрисовались контролы на чужой форме |
Автор: FR2elancER 9.1.2008, 21:47 |
Есть приложение, котрое запускается из моего приложения. Оно некоторое время выполняется и во время выполнения прорисовываются контролы. Как контролы прорисуются с них надо считать информацию. Как узнать когда контролы закончат прорисовку? В цикле считывать информацию с них не эффективно, это грузит систему. Делать глобльный хук на какоето событие? Читал, что глобальные хуки тоже тормозят систему. Помогите пожалуйста советом. |
Автор: dumb 10.1.2008, 01:38 |
попробуй использовать http://msdn2.microsoft.com/en-us/library/ms687022.aspx |
Автор: BorisVorontsov 10.1.2008, 13:55 |
dumb, читать вопросы по диагонали вредно... Автору могу предложить инжектировать в приложение библиотеку, и из неё сабкласить требуемые элементы управления. |
Автор: dumb 10.1.2008, 17:03 |
чтение по диагонали тут не при чем. под "некоторое время выполняется" вполне может пониматься, например, длительная инициализация. это один из "универсальных" ответов, но, во-первых - не отличающийся легкостью в реализации(с точки зрения задающего вопрос), а во-вторых - на разного рода "внедрения" нервно реагирует некоторое защитное ПО. исходя из принципа "от простого - к сложному" и был выдан совет. возможно, здесь вполне достаточным будет считывание по таймеру(а не "в цикле"). |
Автор: FR2elancER 20.1.2008, 13:50 | ||
Использовать WaitForInputIdle пробовал, не подходит по определению (процесс не ждет ввода пользователя). Можно поподробнее насчет
|
Автор: BorisVorontsov 20.1.2008, 14:01 |
SetWindowLong GWL_WNDPROC/SetClassLong GCL_WNDPROC Подробнее в MSDN. |