Welcher SharePoint-Entwickler kennt das nicht: Wenn man Code für eine SharePoint-Erweiterung debuggen will, muss man in Visual Studio den „Attach to Process…“ Dialog aufrufen und alle w3wp-Prozesse markieren, denn oft ist nicht erkennbar, welcher w3wp-Prozess zu meiner SharePoint Web-Applikation gehört. Wenn man dann auf „Attach“ klicken, muss auch noch für jeden markierten w3wp-Prozess eine Security Warnung bestätigt werden.

AttachToProcess

Nach etwas Recherche im Internet stieß ich unter http://blog.lavablast.com/post/2008/01/11/Attach-to-Process-with-one-shortcut.aspx auf ein einfaches Visual Studio Makro, mit dem dieser dieser Vorgang automatisiert werden kann:

Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports EnvDTE90a
Imports EnvDTE100
Imports System.Diagnostics

Public Module AttachToAllw3wp
     Sub AttachToAllw3wp()
          Dim attached As Boolean = False
          Dim proc As EnvDTE.Process

          For Each proc In DTE.Debugger.LocalProcesses
               If (Right(proc.Name, 8) = „w3wp.exe“) Then
proc.Attach()
                    attached =
True
                    ‚Exit For ‚Uncomment this to only attach to first
               End If
         
Next

If attached = False Then
               MsgBox( „w3wp.exe is not running“)
          End
If
     End Sub
End  Module

Für dieses Makro kann man jetzt unter Tools – Options ein Tastenkürzel hinterlegen. Danach kann das Debuggen des SharePoint Codes einfach mit dem zugeordneten Tastenkürzel gestartet werden.

Ist doch cool, oder?