Content /...

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 2000 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 Options

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
v4.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.

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 API Hooking Methods

You can find more information at