Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

Ошибка в "клавиатурном шпионе"   Найти похожие ветки 

 
Серёга   (2004-03-10 18:09) [0]

Народ помогите! Скачал с этого "сайта клавиатурного шпиона", а при компиляции dll Дельфи выдаёт ошибку: "[Error] HookDLL.dpr(68): Not enough actual parameters" Вод код библиотеки: (в выделенной строке происходит ошибка) <br>
Library HookDLL;<br>

Uses<br>
 Windows, Messages, SysUtils;<br>

Const<br>
 GlobMapID = "Global Keyboard Hook Demo {917C91AA-88D5-4134-BB91-15161728594D}";<br>

Type<br>
 PShareInf = ^TShareInf;<br>
 TShareInf = Record<br>
               AppWndHandle: HWND;<br>
               OldHookHandle: HHOOK;<br>
               hm:THandle;<br>
             End;<br>

Var<br>
 MapHandle: THandle = 0;<br>
 ShareInf: PShareInf = nil;<br>
 ptr:PByteArray;<br>

Procedure DLLEntryPoint(dwReason: DWORD); stdcall;<br>
Begin<br>
 Case dwReason Of<br>
   DLL_PROCESS_ATTACH:<br>
     Begin<br>
       MapHandle:=CreateFileMapping(INVALID_HANDLE_VALUE, nil, PAGE_READWRITE, 0, SizeOf(TShareInf), GlobMapID);
       ShareInf:=MapViewOfFile(MapHandle, FILE_MAP_ALL_ACCESS, 0, 0, SizeOf(TShareInf));
     End;<br>
   DLL_PROCESS_DETACH:<br>
     Begin<br>
       UnMapViewOfFile(ShareInf);<br>
       CloseHandle(MapHandle);<br>
     End<br>
 End;<br>
End;<br>

Function KeyboardHook(Code: Integer; ParamW: WPARAM; ParamL: LPARAM): LRESULT;stdcall;<br>
Begin<br>
 If Code IN [HC_ACTION, HC_NOREMOVE] Then<br>
   Begin<br>
     SendMessage(ShareInf^.AppWndHandle, WM_USER, ParamW, Code);<br>
   End;<br>
 Result := CallNextHookEx(ShareInf^.OldHookHandle, Code, ParamW, ParamL)<br>
End;<br>

Function SetKeyboardHook(Wnd: HWND): BOOL; stdcall;<br>
Begin<br>
 If ShareInf<>Nil Then<br>
   Begin<br>
     ShareInf^.AppWndHandle:=Wnd;<br>
     ShareInf^.OldHookHandle:=SetWindowsHookEx(WH_KEYBOARD, @KeyboardHook, HInstance, 0);<br>
     Result:=ShareInf^.OldHookHandle<>0;<br>
   End<br>
 Else Result:=False<br>
End;<br>

Function RemoveKeyboardHook: BOOL; stdcall;<br>
Begin
 Result := UnhookWindowsHookEx(ShareInf^.OldHookHandle);<br>
 CloseHandle(ShareInf^.hm);<br>
End;

Exports
 SetKeyboardHook, RemoveKeyboardHook;<br>

BEGIN<br>
 If DLLProc = Nil Then DLLProc := @DLLEntryPoint;
 DLLEntryPoint(DLL_PROCESS_ATTACH);<br>
END.<br>


 
Алхимик ©   (2004-03-10 20:18) [1]

"[Error] HookDLL.dpr(68): Not enough actual parameters"
Смотрим на
Procedure DLLEntryPoint(dwReason: DWORD); stdcall;


 
Юрий Зотов ©   (2004-03-10 20:33) [2]

Ба-а, какой знакомый код. Лихо его хацкеры-кряцкеры под свои черные замыслы приспособили. Правда, грязи немножко добавили... так что теперь и не знаю, остался ли он рабочим..

Ответ, собственно говоря, очевиден. Но, увы, на вопросы по всяким там "шпионам" я не отвечаю. Могу только подсказать - в D7 определение DLLProc по сравнению с прежним немного изменилось. Нужно добавить всего два символа - и ошибка исчезнет.


 
Серёга   (2004-03-11 20:38) [3]


> Ба-а, какой знакомый код. Лихо его хацкеры-кряцкеры под
> свои черные замыслы приспособили. Правда, грязи немножко
> добавили... так что теперь и не знаю, остался ли он рабочим..
>
> Ответ, собственно говоря, очевиден. Но, увы, на вопросы
> по всяким там "шпионам" я не отвечаю. Могу только подсказать
> - в D7 определение DLLProc по сравнению с прежним немного
> изменилось. Нужно добавить всего два символа - и ошибка
> исчезнет.

А кто Вам сказал, что я собираюсь писать "шпиона"? Я хотел написать трейнер для компьютерной игры, а в трейнерах как раз используется метод ловли клавиш, когда приложение не активно.


 
ssk   (2004-03-11 20:42) [4]

>Юрий Зотов ©  (10.03.04 20:33) [2]
>Ба-а, какой знакомый код.


кажется, я знаю, почему ;-)


 
Алхимик ©   (2004-03-11 22:23) [5]


> А кто Вам сказал, что я собираюсь писать "шпиона"?

Вы. В Subj-е.


 
Андрей__   (2004-03-12 16:26) [6]


> > А кто Вам сказал, что я собираюсь писать "шпиона"?
>
> Вы. В Subj-е.

Я сказал что ошибка в "клавиатурном шпионе", написанным неизвестно кем, но не писал, что собираюсь использовать этот исходник как "клавиатурного шпиона".



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
8-1070019462
Алексей Стадник
2003-11-28 14:37
2004.04.04
содержимое дискеты к книге


3-1078152683
Rule
2004-03-01 17:51
2004.04.04
Помогите разобратся чего я не так делаю при создании Мидас прилож


1-1079693529
АМБ
2004-03-19 13:52
2004.04.04
Скомпилированный файл имеет малые размеры


7-1075127727
zamkom
2004-01-26 17:35
2004.04.04
Работа с СОМ портом


1-1079078406
RustiK
2004-03-12 11:00
2004.04.04
Ошибка при компиляции....