информационная безопасность
без паники и всерьез
 подробно о проекте
Страшный баг в WindowsАтака на Internet
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Хакеры опять разморозили холодильники... 
 C3RB3R шифрует NAS Synology через... 
 Chainalysis раскрыла взлом собственных... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / beginners
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Ага. А если еще нуна ивента ждать -... 22.07.09 00:59  Число просмотров: 3633
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
> Ожидает событий WaitForMultipleObjects.... Я так понимаю,
> по вашим словам нужно крутить GetMessage/DispatchMessage ??
Ага. А если еще нуна ивента ждать - MsgWaitForMultipleObjects + PeekMessage/DispatchMessage
<beginners>
explorer.exe и wh_keyboard_ll 21.07.09 20:39   [Den, HandleX]
Автор: .7mm Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Друзья, доброго всем здравия!

Делаю инжект своего кода в процесс explorer.exe. Создаю новый поток. Проблем нет, код отрабатывает. Пытаюсь установить глобальный хук клавиатуры WH_KEYBOARD_LL. Ошибок не возникает, но хук не ловит события от клавиатуры.

Нашел через поисковики, что возможно проблема с тем, что хук ставиться на другой десктоп. Хорошо, делаю следующее:
1. Сохраняю текущие значения: GetProcessWindowStation, GetThreadDesktop.
2. Меняю текущую станцию процесса на Winsta0: SetProcessWindowStation.
3. Открываю десктоп Default: OpenDesktopA (как вариант OpenInputDesktop).
4. Задаю потоку полученный десктоп (Winsta0\Default): SetThreadDesktop.
5. Ставлю хук: GetModuleHandle / SetWindowsHookEx.
6. Восстанавливаю значение станции процесса: SetProcessWindowStation

Все функции отрабатывают без ошибок. Реакции хука на нажатые кнопки я не наблюдаю :((

Кто сталкивался, подскажите в чём может быть дело?

P.S. Вопрос скорее в programming, но с нулевым рейтингом не могу создать там сообщение...
чем в дальнейшем занимается поток который поставил хук? 21.07.09 20:44  
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
чем в дальнейшем занимается поток который поставил хук?
ему полагается крутить цикл выборки сообщений
а фигню с десктопами и оконными станциями - убрать
Ожидает событий WaitForMultipleObjects.... Я так понимаю, по... 21.07.09 20:56  
Автор: .7mm Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> чем в дальнейшем занимается поток который поставил хук?
> ему полагается крутить цикл выборки сообщений
> а фигню с десктопами и оконными станциями - убрать

Ожидает событий WaitForMultipleObjects.... Я так понимаю, по вашим словам нужно крутить GetMessage/DispatchMessage ??
Ага. А если еще нуна ивента ждать -... 22.07.09 00:59  
Автор: Killer{R} <Dmitry> Статус: Elderman
<"чистая" ссылка>
> Ожидает событий WaitForMultipleObjects.... Я так понимаю,
> по вашим словам нужно крутить GetMessage/DispatchMessage ??
Ага. А если еще нуна ивента ждать - MsgWaitForMultipleObjects + PeekMessage/DispatchMessage
Круто! Снова спасибо :) 22.07.09 13:15  
Автор: .7mm Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Вопрос снят. Действительно, необходимо выполнять обычный... 21.07.09 21:04  
Автор: .7mm Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> > чем в дальнейшем занимается поток который поставил
> хук?
> > ему полагается крутить цикл выборки сообщений
> > а фигню с десктопами и оконными станциями - убрать
>
> Ожидает событий WaitForMultipleObjects.... Я так понимаю,
> по вашим словам нужно крутить GetMessage/DispatchMessage ??

Вопрос снят. Действительно, необходимо выполнять обычный цикл выборки сообщений.

Спасибо, очень помогли.
1





Рейтинг@Mail.ru


  Copyright © 2001-2026 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach