Attach to Process… (ASP.NET) – szybciej

Pracując nad jakąś aplikacją czasami musimy ją zdebugować. Sposobów na to jest wiele – np. podpinając się pod odpowiedni proces. U mnie standardowo wygląda to tak: menu Debug->Attach to Process…->w3wp.exe.

Wykonuję tę operację dość często.

Jak wiele czynności w pracy z komputerem można tę operację zautomatyzować, tworząc np. makro.

W Visual Studio wybieramy: Tools->Macros->Macros IDE

attache_to_process_1

Dodajemy nowy moduł, nadajemy mu nazwę, np. RecordingModule:

attache_to_process_2

i wpisujemy makro:

[sourcecode language=”vbnet”]
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics

Public Module RecordingModule
Sub AttachToAspNET()
Try
Dim dbg2 As EnvDTE80.Debugger2 = DTE.Debugger
Dim trans As EnvDTE80.Transport = dbg2.Transports.Item("Default")
Dim compName As String = Environ$("computername")
Dim proc2 As EnvDTE80.Process2 = dbg2.GetProcesses(trans, compName).Item("WebDev.WebServer.EXE")
proc2.Attach2()
Catch ex As System.Exception
MsgBox(ex.Message)
End Try
End Sub

End Module
[/sourcecode]

Oczywiście w ten sposób możemy podpinać się pod dowolny proces. W przypadku ASP.NET, w zależności od tego, z jakiego serwera korzystamy będzie to:

  • WebDev.WebServer.exe – środowisko uruchamiane przez VS
  • w3wp.exe – IIS 6.0
  • aspnet_wp.exe – IIS 5.0, IIS 5.1

Aby uruchamiać makro, najprościej jest podpiąć je pod skrót klawiaturowy.

Z menu wybieramy: Tools->Options->Environment->Keyboard i wybieramy nasze makro:

attache_to_process_3

Po przypisaniu skrótu (u mnie ALT+CRTL+K) klikamy Assign, zamykamy okno opcji  i cieszymy się nowym makrem :)

1 Response

  1. Pingback: dotnetomaniak.pl

Comments are closed.