有没有人知道使用Delphi进行系统范围的API挂钩?
我下载了madCodeHook,但它没有任何来源,所以我不想使用它;我想自己编程。
我找到了an article on Code Project,但它是在C ++中。请帮我在Delphi 2010中编写。
答案 0 :(得分:1)
@Phoenix,你可以试试uallCollection库,是用delphi 7编写的(我在delphi 2007中测试过它可以正常工作),并附带了一组可以从{{3}下载的例子}和完整的here。唯一的缺点是自07-07-2006以来没有更新,但我个人甚至在Windows 7上测试了这个库,它运行正常。
答案 1 :(得分:0)
你必须使用钩子程序(全局:整个系统;或本地:一个程序或线程)。
基本上,您将调用以下程序:
以下是本地挂钩监控键盘条目的简单示例:
//setting up the hook;
//kbHook is a variable of type HHook (unit Windows);
//kbr_Hook is the procedure that will be called once the event happens;
kbHook:=setwindowshookex(WH_KEYBOARD,@kbr_Hook,0,GetCurrentThreadID());
MSDN文档: http://msdn.microsoft.com/en-us/library/ms644990%28VS.85%29.aspx
祝你好运