Сейчас на форуме: johnniewalker, NIKOLA (+6 невидимых) |
eXeL@B —› Крэки, обсуждения —› Мучаюсь с GameGuard, может кто уже разбирался? |
Посл.ответ | Сообщение |
|
Создано: 19 июля 2008 22:03 · Поправил: DenegaOleg · Личное сообщение · #1 Задача - послать сообщение окну Lineage. PostMessage отлично подходит для серверов, которые не использую GG, однако на официальном сервере все подобные попытки блокируются Есть какие-нибудь мысли о том, как это можно все-таки передать нажатие клавиш? У меня мышка A4 X708, некоторые кнопки можно программировать под нажатие любых клавиш, GG не блокирует, все отлично передается. В связи с этим вопрос - можно ли написать свой драйвер и передавать как-либо через него, либо же использовать драйвер клавиатуры, сложно ли это? Лучше всего знаком с Delphi, немного ассемблера. PS: еще слышал о том, что можно код PostMessage взять из user32.dll, но как это сделать совсем не представляю Буду рад любой помощи. Спасибо заранее) |
|
Создано: 19 июля 2008 22:35 · Поправил: Hellspawn · Личное сообщение · #2 PostMessageA ведёт к такому вызову 77D38B90 B8 DB110000 MOV EAX,11DB
где 1db = 475 = NtUserPostMessage (ф-ия в ядре). ты можешь вызывать её также в программе, только разобраться надо будет с параметрами. ----- [nice coder and reverser] |
|
Создано: 20 июля 2008 12:29 · Личное сообщение · #3 |
|
Создано: 20 июля 2008 12:51 · Личное сообщение · #4 mov edx,esp sysenter в ESP число 0012F558, т.е. это адрес как раз вызываемой функии, т.е. PostMessage (или уже NtUserPostMessage), но для SendMessage там код уже другой. как я понял - sysenter - вызов функции ядра. Теперь как мне выделить именно нужные параметры, потому что в момент вызова в стеке, насколько понимаю, присутствует еще много чего(? |
|
Создано: 20 июля 2008 13:29 · Поправил: Hellspawn · Личное сообщение · #5 не много погуглив, можно найти описание на сях 01237 BOOL STDCALL 01238 NtUserPostMessage(HWND hWnd, 01239 UINT Msg, 01240 WPARAM wParam, 01241 LPARAM lParam) я думаю будет как-то так: Function NtUserPostMessage(hWnd:handle;Msg:LongWord;wParam:WPARAM;lParam:LPARAM ): dword; stdcall; asm pop ebp mov eax, $11DB call @SystemCall ret $10 @SystemCall: mov edx, esp sysenter end; з.ы. хотя я не уверен) ----- [nice coder and reverser] |
|
Создано: 20 июля 2008 13:46 · Личное сообщение · #6 |
|
Создано: 20 июля 2008 14:33 · Поправил: Hellspawn · Личное сообщение · #7 |
|
Создано: 20 июля 2008 14:46 · Личное сообщение · #8 |
|
Создано: 13 сентября 2017 22:26 · Личное сообщение · #9 |
|
Создано: 14 сентября 2017 11:16 · Личное сообщение · #10 EvilArt666 пишет: для вин10, этот код не подходит(((( а очень надо Варианта два: 1. Ты исследуешь, в чём конкретно проблема, какие сообщения об ошибках, публикуешь свои исследования здесь и надеешься на помощь. 2. Ты сам ничего не делаешь, ничего не исследуешь, ничего не публикуешь, а идёшь в Запросы, где находишь специалиста для решения данной задачи. ----- EnJoy! |
|
Создано: 14 сентября 2017 13:23 · Поправил: difexacaw · Личное сообщение · #11 > можно ли написать свой драйвер Конечно, так и нужно делать, а не извращаться в юм. Но обычно даже те, кто отлично разбирается в км, по возможности не используют драйвера. Они нужны лишь для не многих спец задач, можно всё решить в юм. Hellspawn Не давайте ньюби не верный путь. DenegaOleg Никто не вызывает ядерные сервисы напрямую. Особенно теневые(ID > 1000). Попытка вызвать теневой сервис при не загруженном гуе приведёт к фатальной ошибке. Номер сервиса это переменная. Если оригинальный образ испорчен, то проецируется дисковая его копия. Это и используйте. Добавлено спустя 11 минут DenegaOleg > дальше самому будет несложно разобраться Ну конечно, вкуривайте запутанный механизм доставки сообщений из ядра, я тут кратко как то описал ----- vx |
|
Создано: 14 сентября 2017 15:44 · Личное сообщение · #12 difexacaw пишет: Конечно, так и нужно делать, а не извращаться в юм difexacaw пишет: можно всё решить в юм difexacaw пишет: Не давайте ньюби не верный путь. даже если не спорить с тем, что путь по твоему не верный. Это был 2008 год, все вертели ОСь, как хотели. | Сообщение посчитали полезным: plutos |
|
Создано: 14 сентября 2017 18:56 · Поправил: difexacaw · Личное сообщение · #13 Gideon Vi Что это значит ? Интерфейс между ядром уже давно не постоянен, так например для работы 32 апп в 64 моде не используются никакие вызовы ядра, а управление получает промежуточный слой эмуляции через ветвление со сменой мода. Выше же советуют какую то низкоуровневую чушь. Лишь в редких случаях нужно доставать сервисный номер и напрямую вызывать шлюз, но это не нужно для обычных задач. Даже если нэйтив захвачен фильтром - сервисный вызов в юм приводит к фильтрации, так как стаб пропатчен(обычно ав), то всё равно можно вызвать безопасные сервисы. Зачем их вызывать напрямую ?? Имхо бред какой то. Пересмотреть исходную задачу. ----- vx |
|
Создано: 15 сентября 2017 01:32 · Личное сообщение · #14 |
|
Создано: 15 сентября 2017 03:19 · Поправил: Gideon Vi · Личное сообщение · #15 difexacaw пишет: Что это значит ? это значит, что раньше у тебя ад начинался в рамках темы, потом в рамках поста, а теперь уже в рамках одной мысли. В начале мысли ты говоришь, что нужно писать драйвер, а не извращаться в юм, в конце этой же мысли драйверы нужны лишь для не многих спец задач, можно всё решить в юм. Ну и да, кричать из 2017-го в 2008-ой, что всё у нас там кверху раком и вообще мы не туда плывём - сильно. Продолжай, мы с удовольствием почитаем. | Сообщение посчитали полезным: LTRay |
|
Создано: 15 сентября 2017 21:28 · Личное сообщение · #16 Gideon Vi Чушь про сискалы не я поднял. А то что я не совсем корректно составил предложение, я это знал когда писал. Учитывая что тут форум не по филологии, а общий смысл отлично понятен, то не вижу причин вносить поправки. Про 2008 я так ничего и не понял, о чём вы говорите. Это вы там застряли. Про воробьёв смешно, плюсанул за шутку. ----- vx |
|
Создано: 15 сентября 2017 21:38 · Личное сообщение · #17 |
|
Создано: 15 сентября 2017 22:29 · Поправил: difexacaw · Личное сообщение · #18 |
eXeL@B —› Крэки, обсуждения —› Мучаюсь с GameGuard, может кто уже разбирался? |
Эта тема закрыта. Ответы больше не принимаются. |