|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.02.2010, 12:26 | #1 |
Новичок
Джуниор
Регистрация: 11.02.2010
Сообщений: 1
|
Клавиатурный хук. Гляньте код....
Я конечно понимаю, что эта тема в рунете обсасана, но извините меня за новый топик!!!!!
Хочу привести свой хук DLL и файл exe. Моя дллка запускает хук, подскажите, как сделать так, что бы например ВИРТУАЛЬНЫЙ КОД сохранялся в регистре esi. Т.е. нажал я любую кнопку, а в регистр esi идет ее код. Читал урок Iczelion'a. Но не догнал как провернуть данный код... #################DLL!!!!!!!######## ############## .386 .model flat,stdcall option casemap:none include \masm32\include\windows.inc include \masm32\include\user32.inc include \masm32\include\kernel32.inc includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib .data hInstance DWORD 0 hHook DWORD ? .code DllEntry proc hInst:HINSTANCE, reason:DWORD, reserved1:DWORD push hInst pop hInstance mov eax,TRUE ret DllEntry Endp KeyProc proc nCode:DWORD, wParam:DWORD,lParam:DWORD invoke CallNextHookEx, hHook, nCode,wParam,lParam mov edx, lParam mov esi, wParam KeyProc endp InstallHook proc invoke SetWindowsHookEx, WH_KEYBOARD, Addr KeyProc, hInstance, NULL mov hHook,eax ret InstallHook endp End DllEntry ####################EXE############ ############# .386 .model flat,stdcall option casemap:none include \masm32\include\windows.inc include \masm32\include\user32.inc include \masm32\include\kernel32.inc includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib .data NameDLL db "1.dll",0 hLib DWORD ? NameF db "InstallHook",0 AddrTestFunction DWORD ? .data? .code start: invoke LoadLibrary, addr NameDLL mov hLib,eax invoke GetProcAddress, hLib, ADDR NameF mov AddrTestFunction, eax call [AddrTestFunction] invoke FreeLibrary, ADDR hLib invoke ExitProcess,0 end start ЗЫ: Надеюсь хоть кто-нибуль поможет..... Слышал, что КАК ТО можно юзать функцию GetMessage - не знаю как..... |
26.02.2010, 18:44 | #2 |
Заснувший
Форумчанин
Регистрация: 13.03.2009
Сообщений: 213
|
Как то давно я писал на fasme хук для клавы, там в коде я отметил момент когда в eax оказывается символ, вроде в своё время всё работало, посмотри, может поможет.
Правда, тут хук на все сообщения, а из них уже отсеиваются WM_CHAR. Код:
Последний раз редактировалось Виталий Серов; 26.02.2010 в 18:50. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Клавиатурный тренажер | TwEEkcs | Общие вопросы Delphi | 0 | 09.12.2009 15:39 |
гляньте задачку на подсчёт букв | hen | Помощь студентам | 3 | 02.05.2009 14:27 |
Гляньте код пожалуйста... | hen | Помощь студентам | 8 | 26.04.2009 16:12 |
Гляньте свежей головой ктонить! Плиз... | Samopal | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 21.04.2009 17:35 |