![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
Номер потока узнаем при помощи GetCurrentThreadId
Фокус получается такой, ложная функция sendmessage будет выполнятся в контексте того приложения которое ее вызвало, а значит GetCurrentThreadId укажет виновника, остается передать это значение в свою програму любым методом, хоть при помощи буфера обмена! -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| RedHat |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 28.3.2006 Репутация: нет Всего: нет |
Вот именно как посмотреть сообщение нам предназначается или нет вот в этом загвостка!! и по поводу блокировке если можна примерчик |
|||
|
||||
| Alexeis |
|
||||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
Это как раз просто, мы же знаем заголовок нашего приложения, находим главное окно, дальше находим всех его детей, детей их детей и т.д. и сверяем handl - ы(можно ограничется поиском одного окна, того которое нам нужно), если handle окна назначения совпадает с hendl-ом одного из наших контролов, то ясно что нам отправляют. тут и пример не нужен мы же после проверки (вдруг не нам!) должны переслать это сообщение правельному адресату, соответствено если адресат оказалсянашим окном, то мы этого не делаем
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
||||
|
|||||
| RedHat |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 28.3.2006 Репутация: нет Всего: нет |
понятно, но смотри ми же делаем инъекцию dll в чужой процесс так как ми будем знать handl той программы которую нужно защищать то есть как передать параметр??? |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
Ничего не тужно передавать его можно узнать используя функции FindWindow EnumWindows EnumChildWindows -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
Я подумал, можно еще упростить решение даже не портя системные dll.
Просто поставить глобальный хук на сообщение WM_LBUTTONDOWN, и поскольку хук выполнится в контексте пославшего сообщение потока, то GetCurrentThreadId или подобные функции должены дать нам все что надо! Зная все параметры нашего окна, мы с легкостю его найдем. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| RedHat |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 28.3.2006 Репутация: нет Всего: нет |
В программе есть горячие клавиши (стрелки) , выше приведёный код работает нормально но толко если блокировать все сообщения идущие по handl окна то блокируются и сами стрелки!!! вот вместо ????? вопросов надо вставить код который смотрит чужое приложение послало нажатие или нет если чужое то блокировать если нет то разрешить выполнение???? если кого не затруднит обяснить как это моно реализовать а то я зашёл в тупик |
||||
|
|||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |