Metodo Debugger2.Stop (Boolean)
Interrompe il debug e termina o disconnette tutti i processi collegati.
Spazio dei nomi: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Sintassi
'Dichiarazione
Sub Stop ( _
WaitForDesignMode As Boolean _
)
void Stop(
bool WaitForDesignMode
)
void Stop(
[InAttribute] bool WaitForDesignMode
)
abstract Stop :
WaitForDesignMode:bool -> unit
function Stop(
WaitForDesignMode : boolean
)
Parametri
- WaitForDesignMode
Tipo: System.Boolean
Impostare su true se la sessione di debug deve essere interrotta solo quando viene attivata la modalità progettazione.Impostare su false se si intende interrompere il debug, anche se è necessario eseguire altre attività nella macro prima che venga attivata la modalità progettazione del debugger.
Implementa
Note
Per ulteriori informazioni, vedere How to: Stop Debugging or Stop Execution.
Esempi
Nell'esempio riportato di seguito viene illustrato come utilizzare il metodo Stop.
Per verificare il metodo:
Impostare un punto di interruzione nell'applicazione di destinazione.
Eseguire l'applicazione di destinazione in modalità debug.
Quando l'applicazione si interrompe al punto di interruzione, eseguire il componente aggiuntivo.
public static void Stop(EnvDTE80.DTE2 dte)
{
EnvDTE80.Debugger2 debugger = (EnvDTE80.Debugger2)dte.Debugger;
debugger.Stop(false);
}
' WaitForDesignMode is true.
Sub StopDebuggingAndNotifySync
DTE2.Debugger.Stop(True)
MsgBox("Debugger has been stopped, for sure.")
End Sub
' WaitForDesignMode is false.
Sub StopDebuggingAndNotifyAsync
DTE2.Debugger.Stop(False)
' Depending on how long it takes to stop debugging,
' you may or may not yet be in Design mode.
If DTE2.Debugger.CurrentMode <> dbgDebugMode.dbgDesignMode
MsgBox("Debugger still stopping")
Else
MsgBox("Debugger has been stopped")
End If
End Sub
Nota
Le macro vengono eseguite sul thread principale di Visual Studio. Il codice riportato di seguito non funziona e la macro esegue un ciclo infinito perché nell'IDE non è possibile attivare la modalità progettazione. In alternativa, ricorrere a un thread separato o a un meccanismo di pool.
' Bad Code Example.
Sub StopDebuggingAndWaitForDesign
DTE2.Debugger.Stop(False)
While DTE2.Debugger.CurrentMode <> dbgDebugMode.dbgDesignMode
System.Threading.Thread.Sleep(50)
End While
MsgBox("Debugger has been stopped")
End Sub
Sicurezza di .NET Framework
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per ulteriori informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.