madCodeHook 

Content /...
www.madshi.net

The package "madCodeHook" offers everything you need to hook code (mostly APIs). Usually such hooks show effect only in the current process. But madCodeHook also can inject a specified DLL into any desired 32bit or 64bit process or even "system wide" (that is into all currently running and into all in the future created processes). So by putting your hooking stuff into a little DLL and injecting it "system wide", you can realize effective and easy to use system wide API hooking. Of course everything works just as fine under all all Microsoft OSs from Windows 95 and NT4 up to the latest 32bit and 64bit OSs.

Besides, madCodeHook also offers IPC (inter process communication) functionality and lots of other tool functions. A full list of what is contained in madCodeHook can be found in the madCodeHook Reference.

Main Topics
API/Code Hooking Dll Injection IPC Functionality Tool Functions

Experienced madCodeHook 2.x users, who have just upgraded to madCodeHook 3.0, might want to read the v3.0 information first, including the linked pages.

To get new madCodeHook users started, I've written a little How To Use madCodeHook guide, which I recommend to read first before beginning to write your own hooking projects. Please also read the Hooking Rules to avoid destabilizing the OS with your hook projects.

Getting Started
v3.0 information How To Use madCodeHook Hooking Rules

If you're new to 64bit OSs, there's a little introduction page explaining the most important differences to 32bit OSs, and how they affect hooking. Also there's a page talking about the injection driver used by madCodeHook.

In win9x madCodeHook offers an additional hooking mode: You can install a direct system wide hook on most system APIs without having to write a DLL. But that's quite difficult stuff, so you should do that only when you know *exactly* what you're doing. Otherwise you are in big danger to crash the whole operating system. You can read more about this on the System Wide API Hooking page.

If you're interested in basic informations about which API hooking methods are known in the programming world and which one of the those "madCodeHook" is using and why, please go over here.

Background Reading
64bit OS Injection Driver System Wide API Hooking API Hooking Methods

You can find more information including an evaluation version download at http://www.madCodeHook.com.