Debugger2.Stop(Boolean) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Arrête le débogage et se termine ou se détache de tous les processus attachés.
void Stop(bool WaitForDesignMode = true);
[System.Runtime.InteropServices.DispId(8)]
public void Stop (bool WaitForDesignMode = true);
[<System.Runtime.InteropServices.DispId(8)>]
abstract member Stop : bool -> unit
Public Sub Stop (Optional WaitForDesignMode As Boolean = true)
Paramètres
- WaitForDesignMode
- Boolean
Affectez la valeur true lorsque la session de débogage doit s'arrêter uniquement lorsqu'il atteint le mode Design. Définissez la valeur false, si vous prévoyez d'arrêter le débogage, mais devez effectuer d'autres tâches dans la macro avant même que le débogueur ne passe en mode Design.
Implémente
- Attributs
Exemples
L'exemple suivant décrit comment utiliser la méthode Stop.
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
Notes
Les macros sont exécutées sur le thread principal de Visual Studio . Le code suivant ne fonctionne pas et la macro boucle indéfiniment, car l’IDE n’a jamais la possibilité d’entrer en mode création. Au lieu de cela, vous pouvez recourir à un thread ou à un mécanisme de regroupement distinct.
' 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
Remarques
Pour plus d’informations, consultez Comment : arrêter l’exécution .