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

Вниз

Ошибка с Hook ом ...   Найти похожие ветки 

 
Axis_of_Evil   (2003-05-29 09:23) [0]

Ставим ловушку wh_CallWndProc ...

function WndProcHook(Code: LongInt; wP: Word; Lp: LongInt): LongInt; stdcall;
var
Msg: ^CWPStruct;
begin
if (Code >= 0) then
begin
Msg := @Lp;
MainForm.OutList.Items.Add("!")
end;
Result := CallNextHookEx(TheHook, Code, wP, Lp);
end;


procedure TMainForm.FormCreate(Sender: TObject);
begin
TheHook := SetWindowsHookEx(wh_CallWndProc, @WndProcHook, 0, GetCurrentThreadID);
if TheHook = 0 then
ShowMessage("Couldn""t Hook");
end;


Вылетает с криками
... EOSError with message "System Error. Code: 1411
Class doesn"t exist" ...

Где я ошибся?


 
Axis_of_Evil   (2003-05-29 09:33) [1]

Msg := @Lp;
Вот это я сказанул ...


 
Axis_of_Evil   (2003-05-29 09:34) [2]

Msg := Pointer(Lp);
Тоже не работает ...


 
Игорь Шевченко   (2003-05-29 10:05) [3]

Ошибка в рекурсии, IMHO.
После фразы MainForm.OutList.Items.Add("!")
снова вызывается оконная процедура и так далее, со всеми остановками. Отладчик поможет :)



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

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

Наверх




Память: 0.44 MB
Время: 0.007 c
3-100607
sergt
2003-07-09 16:31
2003.07.31
wm_user


4-101029
dimonf
2003-05-28 19:45
2003.07.31
Народ, как определить что у меня курсор не на PopupMenu???


14-100941
Дмитрий К.К.
2003-07-15 06:08
2003.07.31
Именинники 15 июля


14-100914
Chieftain
2003-07-14 13:13
2003.07.31
Синтаксический анализатор, парсинг текста


14-100937
Карлсон
2003-07-11 12:43
2003.07.31
---|Ветка была без названия|---





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский