Ogni volta che devo collegarmi al processo, scorrere verso il basso e trovare w3wp.exeCome posso effettuare il debug più veloce in Visual Studio?
C'è un modo più veloce per farlo?
Ogni volta che devo collegarmi al processo, scorrere verso il basso e trovare w3wp.exeCome posso effettuare il debug più veloce in Visual Studio?
C'è un modo più veloce per farlo?
Ho una macro per questo scopo. Nel menu degli strumenti, apri Macro -> Macro IDE. Nel riquadro a sinistra, fare doppio clic su MyModule (o creare un nuovo modulo) e incollare questo codice:
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Public Module MyModule
Sub AttachToIIS()
Try
Dim dbg2 As EnvDTE80.Debugger2 = DTE.Debugger
Dim trans As EnvDTE80.Transport = dbg2.Transports.Item("Default")
Dim dbgeng(2) As EnvDTE80.Engine
dbgeng(0) = trans.Engines.Item("T-SQL")
dbgeng(1) = trans.Engines.Item("Managed")
Dim proc2 As EnvDTE80.Process2 = _
dbg2.GetProcesses(trans, Environment.MachineName).Item("w3wp.exe")
proc2.Attach2(dbgeng)
Catch ex As System.Exception
MsgBox(ex.Message)
End Try
End Sub
End Module
Quindi, è possibile modificare i tasti di scelta rapida e impostare questo per una nuova combinazione; Io uso Ctrl + Shift + A. Il comando da invocare sarà Macros.MyMacros.MyModule.AttachToIIS
.
MODIFICATO: modificato "COMPUTERNAME" su Environment.MachineName
.
Debug-> Attach to Process
Inizia a digitare il nome del processo "w3wp" e sarà immediatamente trovare nella lista.
È possibile scrivere una macro e assegnarla a un pulsante della barra degli strumenti.
Si dovrebbe essere in grado di eseguire il debug di IIS proprio come se si utilizza il server Web di Visual Studio (Cassini):
Se si esegue Vista o successivo con UAC attivato, sarà necessario eseguire Visual Studio come amministratore affinché funzioni. Fare clic con il tasto destro del mouse sul collegamento di Visual Studio e selezionare Esegui come amministratore .... Accetta la richiesta di elevare i privilegi.
Oppure è possibile inserire Environment.MachineName.ToString al posto di "COMPUTERNAME". –
Sì, questo codice macro non è il migliore: in origine era una macro registrata. –