0

Delphiを使用したシステム全体のAPIフックについて知っている人はいますか?

madCodeHookをダウンロードしましたが、ソースがないため、使用したくありません。自分でプログラムしたいです。

Code Projectに関する記事を見つけましたが、C++です。Delphi2010で書くのを手伝ってください。

4

2 に答える 2

1

@Phoenix、 uallCollectionライブラリを試すことができ、delphi 7で記述され(delphi 2007でテスト済みで、問題なく動作します)、ここからダウンロードできる一連の例と完全なソースコードが付属しています。唯一の欠点は、2006年7月7日以降更新されていないことですが、個人的にはWindows 7でもこのライブラリをテストしており、問題なく動作します。

于 2010-06-28T17:05:21.400 に答える
0

フックプロシージャを使用する必要があります(グローバル:システム全体、またはローカル:単一のプログラムまたはスレッド)。

基本的に、次のプロシージャを呼び出します。

  • SetWindowsHookEx関数:フックをインストールする(システムイベントを監視する)
  • フック関数:これは、「フック」するイベントが発生したときにWindowsによって呼び出されるプロシージャです。
  • UnhookWindowsHookEx関数:フックを削除します

キーボードエントリを監視するローカルフックの簡単な例を次に示します。

//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

幸運を

于 2010-06-28T09:09:13.397 に答える