What's new?
If you are interested in licensing detours for Commeric Purposes, please contact iPlg@microsoft.com.
We've Just Released Version 1.5.
Overview
DETOTOURS IS A LIBRARY for Instrumenting Arbitrary Win32 Functions on x86 Machines. Detours Intercepts Win32 Functions by Re-Writing Target Function images.
Binary Instrumentation
Innovative systems research hinges on the ability to easily instrument and extend existing operating system and application functionality. With access to appropriate source code, it is often trivial to insert new instrumentation or extensions by rebuilding the OS or application. However, in today's world of commercial Developments, And Binary-Only Releases Systems Research Seldom Have Access To All Relevant Source Code.
Detours is a library for instrumenting arbitrary Win32 functions on x86 machines. Detours intercepts Win32 functions by re-writing target function images. The Detours package also contains utilities to attach arbitrary DLLs and data segments (called payloads) to any Win32 binary.
Detours preserves the un-instrumented target function (callable through a trampoline) as a subroutine for use by the instrumentation. Our trampoline design enables a large class of innovative extensions to existing binary software.
WE Have Used Detours To Create An Automatic Distributed Partitioning System, To Instrument and Analyze The DCOM Protocol Stack, and To Create A Thunking Layer for a com-based Os API.
Download Detours!
Publications
Galen hunt and doug brubacher. Detours: binary interception of Win32 functions. Proceedings of the 3rd Usenix Windows NT Symposium, PP. 135-143. Seattle, Wa, July 1999. USENIX.