Форум: "Начинающим";
Текущий архив: 2007.08.05;
Скачать: [xml.tar.bz2];
ВнизВызов функции из юнита. Найти похожие ветки
← →
vitv © (2007-07-09 10:58) [0]Есть Unit1 в котором объявлена функция, возможно ли включить в код Unit2 функцию из Unit1?
← →
Инс © (2007-07-09 10:59) [1]Unit2;
interface
uses Unit1;
← →
vitv © (2007-07-09 11:06) [2]Не хочет..
function KbHook(code: Integer; wparam: Word; lparam: LongInt): LongInt; stdcall;
begin
if code < 0 then
Result := CallNextHookEx(k_oldKbHook, code, wparam, lparam)
else
Result := 1;
end;
procedure KeyBoardOff;
begin
k_OldKbHook := SetWindowsHookEx(WH_KEYBOARD, @KbHook, HInstance, 0);
end;
procedure KeyBoardOn;
begin
if k_OldKbHook <> 0 then
begin
UnHookWindowshookEx(k_OldKbHook);
k_OldKbHook := 0;
end;
← →
Сергей М. © (2007-07-09 11:09) [3]
> Не хочет
Не рано ли, не знаючи основ Паскаля, заниматься не самым тривиальным делом - хуками ?
← →
ЮЮ © (2007-07-09 11:11) [4]> Не хочет..
Это всё из implementation. А в интерфейсной части модуля есть заголовки функций?
← →
ЮЮ © (2007-07-09 11:12) [5]или это функции из так называемого Unit2?
← →
Инс © (2007-07-09 11:29) [6]
> Result := CallNextHookEx(k_oldKbHook, code, wparam, lparam)
Гы-гы, сколько можно обсуждать, что так делать неправильно.
← →
vitv © (2007-07-09 11:36) [7]var
----------
function KbHook(code: Integer; wparam: Word; lparam: LongInt): LongInt; stdcall;
procedure KeyBoardOff;
procedure KeyBoardOn;
Забыл растяпа.....
> Инс © (09.07.07 11:29) [6]
> > Result := CallNextHookEx(k_oldKbHook, code, wparam, lparam)Гы-
> гы, сколько можно обсуждать, что так делать неправильно.
>
--------------------
А почему?
← →
Инс © (2007-07-09 11:40) [8]А потому что меньше Фленова читать нужно, он еще и не такое способен посоветовать. Почему - читать здесь:
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=548
Это раз. А два - это то, что параметр wParam имеет тип DWORD а не Word, вы же не в 16-тиразрядной винде работаете!
← →
Kolan © (2007-07-09 11:43) [9]> Есть Unit1 в котором объявлена функция, возможно ли включить
> в код Unit2 функцию из Unit1?
[1]
А потом:function MyUnit2Foo: Integer;
begin
MyUnit1Foo;
end;
Все сабж достигнут.
← →
Инс © (2007-07-09 11:43) [10]Вообще очень странная у вас функция ловушки. CallNextHookEx нужно вызывать всегда! Иначе другие ловушки не сработают или, что хуже для вас, если кто-то другой не напишет CallNextHookEx или напишет неправильно, как у вас, то ваша ловушка не сработает.
← →
vitv © (2007-07-09 12:07) [11]А как эта книга?
Delphi. Народные советы (+ CD-ROM)
А. Шкрыль (2007)
Рассмотрен широкий круг практических вопросов по программированию в Delphi: трюки и хитрости использования стандартных компонентов, готовые решения для повседневных задач, работа с СУБД (ORACLE, Interbase/Firebird, MySQL, MS SQL Server), взаимодействие с мультимедиа... далее
http://oz.by/books/more1029282.html
← →
Инс © (2007-07-09 12:09) [12]
> А как эта книга?
Не читал. Если интересуетесь ситемным прграммированием, рекомендую Рихтера. Там правда хуки не рассматриваются, но из той информации, что там есть, можно самому понять, как они работают.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.08.05;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.047 c