
164
|
Chapter 5, Debugging
#41 Debug a Running Process
HACK
Hacking the Hack
Remember how attaching to an ASP.NET application is so easy because it’s
always the same process? In fact, it’s so easy that even a machine can do it—
and you can write a macro to do it for you. Go to Tools
➝ Macros and select
Macros IDE. This will open the Macro IDE which is a Visual Studio look-
alike specifically for editing Macros. Right-click on My Macros and add a
new Module. Name the module “Debugging” or something similar. Then
add the following code into the new module:
Public Sub AttachToIIS( )
AttachToProcess("aspnet_wp.exe")
End Sub
Private Sub AttachToProcess(ByVal ProcessName As String)
Dim Processes As EnvDTE.Processes = DTE.Debugger.LocalProcesses
Dim Process As EnvDTE.Process
For Each Process In Processes
If Process.Name.Substring(Process.Name.LastIndexOf("\") + 1) _
= ProcessName Then
Process.Attach( )
Exit Sub
End If
Next
End Sub
Modify the name of the process to w3wp.exe if you are using Windows
Server 2003. Next, save the module and close the Macro IDE.
Now, in your Visual Studio IDE, go to Tools
➝ Macros ➝ Macro Explorer.
Browse into your new module and find the
AttachToIIS macro. Double-click
to run it, and your project should attach to IIS and go into debugging mode.
You could then create a toolbar button and a keyboard shortcut for your
macro
[Hack #51]. For those of you who are writing a Windows