throbber
Page 1 of 4
`
`Sign in
`
`Detours - Microsoft Research
`
`Research
`
`Detours
`
`Established: January 16, 2002
`
`Detours is a software package for re-routing Win32 APIs underneath applications.
`Under commercial release for over 10 years, Detours is licensed by over 100 ISVs
`and used within nearly every product team at Microsoft.
`What's New
`
`What’s New?
`
`Detours Professional 3.0 is available for immediate purchase at the online
`Microsoft Store.  Detours Professional includes a commercial use license that
`allows the use of Detours in commercial products and in production
`environments.  Detours Professional includes support for either 32-bit or 64-bit
`processes on x86 and other Windows-compatible processors.
`
`Detours Express 3.0 is available for immediate download under a no-fee, click-
`through license for research, non-commercial, and non-production use.  Detours
`Express is limited to 32-bit processes on x86 processors.
`
`The APIs in Detours Professional 3.0 and Detours Express 3.0 are identical.  The
`two versions differ in their licensing and processors supported.  Detours
`Professional is required for all commerical or production deployments.  Detours
`
`https://www.microsoft.com/en-us/research/project/detours/
`
`7/12/2016
`
`

`
`Detours - Microsoft Research
`
`Page 2 of 4
`
`Professional supports x86, x64, IA64, and ARM processors.  Detours Express
`supports only x86; it may be used to prototype (but not deploy) commercial
`projects.
`
`Detours 3.0 includes the following new features over Detours 2.x:
`
`• Support for 64-bit code on x64 and IA64 processors (Professional Edition only).
`• Support for all Windows processors (Professional Edition only).
`• Removed requirement for including detoured.dll in processes.
`• Compatibility improvements for detouring APIs used by managed-code (MSIL)
`programs, especially on x64 processors.
`• Addition of APIs to enumerate PE binary Imports and to determine the module
`referenced by a function pointer.
`
`Overview
`
`Overview
`
`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 systems
`researchers seldom have access to all relevant source code.
`
`Detours is a library for instrumenting arbitrary Win32 functions Windows-
`compatible processors. Detours intercepts Win32 functions by re-writing the in-
`memory code for target functions. 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.
`
`https://www.microsoft.com/en-us/research/project/detours/
`
`7/12/2016
`
`

`
`Detours - Microsoft Research
`
`Page 3 of 4
`
`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. Detours is used widely within Microsoft and within the
`industry.
`
`Publications
`
`Detours: Binary Interception of Win32 Functions
`Galen Hunt, Doug Brubacher
`July 1999
`USENIX
`
`Follow Microsoft Research
`
`Like
`
`Follow
`
`YouTube
`
`Share this page
`
`Share
`Share
`
`Tweet
`
`Share
`Share
`
`https://www.microsoft.com/en-us/research/project/detours/
`
`7/12/2016
`
`

`
`Detours - Microsoft Research
`
`Page 4 of 4
`
`Learn
`
`Windows
`
`Office
`
`Skype
`
`Outlook
`
`OneDrive
`
`MSN
`
`Devices
`
`Microsoft Surface
`
`Xbox
`
`PC and laptops
`
`Microsoft Lumia
`
`Microsoft Band
`
`Microsoft HoloLens
`
`Microsoft Store
`
`View account
`
`Order tracking
`
`Retail store locations
`
`Returns
`
`Sales & support
`
`Downloads
`
`Download Center
`
`Windows downloads
`
`Windows 10 Apps
`
`Office Apps
`
`Values
`
`Diversity and inclusion
`
`Accessibility
`
`Environment
`
`Company
`
`Careers
`
`About Microsoft
`
`Company news
`
`Microsoft Philanthropies
`
`Investors
`
`Microsoft Lumia Apps
`
`Corporate Social Responsibility
`
`Research
`
`Internet Explorer
`
`Privacy at Microsoft
`
`Site map
`
`English (United States)
`
`Contact us
`
`Privacy & cookies
`
`Terms of use
`
`Trademarks
`
`About our ads
`
`© 2016 Microsoft
`
`https://www.microsoft.com/en-us/research/project/detours/
`
`7/12/2016

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket