Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как найти поток?

8.0K
06 февраля 2005 года
Keith
8 / / 05.02.2005
Мне нужно найти в системе такой поток нужного мне процесса, который имеет окно(очередь сообщений). Перебрать(toolhelp API) все процессы и найти нужный я могу, перебрать все потоки найденного процесса я то же могу, но как узнать, что какой-то поток имеет окно? Мне это нужно для того, чтобы повесить Hook на определенный процесс, а SetWindowsHookEx принимает в качестве параметра ThreadId. Может быть можно повесить хук на любой из найденных потоков? Или на все?

Может быть лучше перебирать все окна, для каждого определять имя процесса(exe'шник) и если нужный, то определять для такого окна хэндл потока? Если так, то подскажите последавательность API-функций, которые надо вызвать, только учтите, что:
- это должно работать начиная с Win98;
- окно может быть с любым заголовком;
- окно может быть в трее.

И напоследок: если я повешу хук на одно окно процесса, то в другом окне этого процесса вызов нужной мне функции будет перехватываться? А если процесс будет создавать новые окна, то в них будет работать hook? Или мне надо будет вешать hook на CreateWindow? В общем разъясните кто знает!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог