Description: VC++ to write the source code examples APIHook generally turned a bit, only linked to the introduction of the function table, there SetWindowHookEx and CreateRemoteThread into two ways, the process of enumeration to distinguish between the different systems are used psai and toolhelp, the other in order to obtain Process the creation of news, so a drive to register a callback function, in general, has done quite a part in the injection rod, if you want to hang a variety of functions can be combined with the use of detour.
File list (Check if you may need any files):
HookCode
........\Common
........\......\Common.h
........\......\CustomMessages.h
........\......\IniFile.cpp
........\......\IniFile.h
........\......\LockMgr.cpp
........\......\LockMgr.h
........\......\LogFile.h
........\......\ModuleInstance.cpp
........\......\ModuleInstance.h
........\......\SysUtils.h
........\HookSrv
........\.......\ApplicationScope.cpp
........\.......\ApplicationScope.h
........\.......\HookSrv.cpp
........\.......\HookSrv.dsp
........\.......\HookSrv.h
........\.......\HookSrv.plg
........\.......\HookSrv.rc
........\.......\LimitSingleInstance.cpp
........\.......\LimitSingleInstance.h
........\.......\MainFrm.cpp
........\.......\MainFrm.h
........\.......\res
........\.......\...\HookSrv.rc2
........\.......\...\trayicon.ico
........\.......\Resource.h
........\.......\StdAfx.cpp
........\.......\StdAfx.h
........\.......\TrayIcon.cpp
........\.......\TrayIcon.h
........\HookSystem.dsw
........\HookTool
........\........\ApiHook.cpp
........\........\ApiHook.h
........\........\HookTool.cpp
........\........\HookTool.def
........\........\HookTool.dsp
........\........\Injector.cpp
........\........\Injector.h
........\........\Interlocked.h
........\........\ModuleScope.cpp
........\........\ModuleScope.h
........\........\NtDriverController.cpp
........\........\NtDriverController.h
........\........\NtInjectorThread.cpp
........\........\NtInjectorThread.h
........\........\NtProcessMonitor.cpp
........\........\NtProcessMonitor.h
........\NTProcDrv
........\.........\NTProcDrv.c
........\.........\NTProcDrv.dsp
........\TestApp
........\.......\TestApp.cpp
........\.......\TestApp.dsp