主にDLLインジェクションを利用したDirectXのAPIフックを行う際に参考になったページの備忘録です。
APIフックや開発に便利なツールなども記述しておきます。
DirectX Hook
Cheat Engine :: View topic - D3D Overlay
http://forum.cheatengine.org/viewtopic.php?t=315593&postdays=0&postorder=asc&start=15
Direct3DCreate9と、それによって作成されたインスタンスのCreateDeviceをフックするコードが掲載されています。
動的リンクで呼び出している関数へのフック、DirectX9へのフック その2
DLLProxy(またはDLLInjection)手法を利用してDirect3DCreate9とCreateDeviceをフックする手順が詳しく説明されています。
D3D9 Hook Capture - hackingbits
実際にDirectXをフックするサンプルコードと、フックする対象のテストクライアントのコードが公開されています。
DirectXによる実装方法 - Satoshi OHSHIMA's web site
DirectXを普通に利用する場合のプログラミング方法が掲載されています。
API Hook
PE(Portable Executable)ファイルフォーマット その3 ~ IAT 書き換えによるインポートシンボル(API)のフック ~
IAT(インポートアドレステーブル)を書き換えて公開APIをフックするコードが掲載されています。
etc
仲介DLL生成補助ツール
仲介DLLを作成する際に、対象のDLLのエクスポート関数の列挙や雛形の自動作成を行う非常に便利なツールです。
利用する際は、以下のようなコマンドでソースファイルを作成することができます。
C:\>listexport -file kernel32.dll lernel32
デバッグモニタツールのダウンロード : Vector ソフトを探す!
OutputDebugStringを受信するためのツールです。DLLからメッセージを出力する場合に便利です。