|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.12.2011, 19:52 | #1 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Перехват создания окон одного процесса
Доброго времени суток!
Как можно перехватывать создания окон в рамках 1 процесса? Допустим, есть поток TThread который вешается на процесс и ждёт завершения процесса. Как получить все окна созданные именно этим процессом и перехватывать новые, создаваемые, процессом окна? Как можно решить задачку? |
09.12.2011, 20:22 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
ну тогда по таймеру проходите с EnumWindows и проверяйте соответствие нужному процессу.
только поток тут не очень хорошая идея. или вам что-то более важное чем просто список окон? Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
09.12.2011, 20:52 | #3 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
По этому и ищу другие способы.
т.к. программ за которыми наблюдение ведётся - не определённое количество. И на каждую из них приходится таймер с EnumWindows(т.к. действия разные для окон) - нет это плохая идея. Слишком высокая нагрузка. Может стоит посмотреть на хуки? Можно что-то по поводу этого сказать? |
09.12.2011, 20:59 | #4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
можете и хук поставить(вида WH_CALLWNDPROC наверно).
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
09.12.2011, 21:57 | #5 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
Ловушку в сам процесс ставить или глобальную. Если глобальную, то не сильно ли будет тормозить систему?
И как обмениваться данными с этой DLL? |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Список окон процесса | Johnson | Общие вопросы Delphi | 2 | 15.08.2011 20:31 |
Система упрощенного создания окон (S.C.O.W.) | Alex Cones | Свободное общение | 57 | 20.11.2010 10:38 |
Динамический TMediaPlayer, в котором от одного до четырех окон | nick17 | Общие вопросы Delphi | 5 | 19.10.2010 12:08 |
Перехват создания сокета | Horus92 | Работа с сетью в Delphi | 0 | 27.06.2010 12:50 |
Перехват создания файла DOS | vamp8 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 08.06.2010 21:56 |