Like most .NET developers, I use (and am eternally grateful for) Reflector for .NET. Aside from Visual Studio .NET and NUnit, it's the most used tool in my development arsenal.
Something that I do fairly frequently is run a web or windows application, and then decide that I want to Reflector it (yes, Reflector has become a verb in my vocabulary). That means that I need to figure out where the application is running (which isn't always easy), and navigate there in Reflector's open file dialog. After the umpteenth time doing this, I decided to automate the process. Fortunately, Reflector has a fantastic extensibility model, so I was able to scrape together an add-in to do just this.
The add-in adds a new menu to the Tools menu called “Open Running Assembly“. Select it and the add-in displays a dialog that displays a list of managed processes running on the system. You can select the process, or any managed assembly loaded in that process, and the selections get loaded up into Reflector.
It's still pretty rough (call it version .5), but usable enough that I decided to post it. If you're interested in trying it, you can download it from here. Just unzip it into the Reflector directory and add it to Reflector's add-in list.
Update - it seems that people are being directed to the .5 version (described in this post) rather than the newer .6 version described in a subsequent posting. I've updated the link here to point to the newer version.