ReAttach gives you an easy way of reattaching to your prior debug targets. This is especially useful when working with IIS-processes, test runners and web browsers. ReAttach stores your attach history for you and provides both toolbar and menu options for easy access.
The hotkey sequence CTRL+R, CTRL+A is used to ReAttach to your latest target (top of the history list). If your process is not currently running, ReAttach will ask you to start it and attach to it as soon as it becomes available.
Older versions of Visual Studio (2010-2019)
Older versions of ReAttach (compatible with older versions of Visual Studio) can also be found pre-packaged in the GitHub repository here.
If you encounter problems with an extension on a particular version of VS, please let me know and try moving back to an earlier version.
The ReAttach menu controller dropdown showing several targets in the users ReAttach history.
How does it work?
When debugging is started and the underlying reason is a user attach, ReAttach stores process path, username and PID in the registry (in a subkey called ReAttach located under the currently running visual studio user's key). Once a ReAttach is made the following steps occurs:
When trying to ReAttach to a process that is not running, the user is prompted with a dialog waiting for the process to start. This can for example be helpful to catch exceptions in the startup sequence of a web application running on IIS.
The source code for this extension is available on GitHub. Feel free to fork it and add stuff you're missing.