Sdílet prostřednictvím


Debugger2.Stop – metoda

Zastaví ladění a ukončí nebo odpojí od všechny připojené procesy.

Obor názvů:  EnvDTE80
Sestavení:  EnvDTE80 (v EnvDTE80.dll)

Syntaxe

'Deklarace
Sub Stop ( _
    WaitForDesignMode As Boolean _
)
void Stop(
    bool WaitForDesignMode
)
void Stop(
    [InAttribute] bool WaitForDesignMode
)
abstract Stop : 
        WaitForDesignMode:bool -> unit
function Stop(
    WaitForDesignMode : boolean
)

Parametry

  • WaitForDesignMode
    Typ: Boolean

    Nastavit na true Pokud ladicí relace zastavení, pouze když dosáhne hodnoty režimu návrhu.Nastavit na false Pokud máte v úmyslu zastavit ladění, ale je nutné provádět další úlohy v makru, dokonce i před vstupem ladicí program v režimu návrhu.

Poznámky

Další informace naleznete v tématu <PAVEOVER> Postupy: Ukončení ladění nebo zastavení provádění.

Příklady

Následující příklad demonstruje použití Stop metoda.

Tato metoda testování:

  1. Nastavte zarážky v cílové aplikaci.

  2. Cílová aplikace spouštět v režimu ladění.

  3. Jakmile aplikace přestane u zarážky, spustit doplněk.

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

[!POZNÁMKA]

Spuštění makra na základě hlavního podprocesu Visual Studio.Následující kód nefunguje a makro cyklicky neomezeně dlouho, protože nikdy šanci do režimu návrhu IDE.Místo toho použít samostatný podproces nebo sdružování mechanismus.

' 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

Zabezpečení rozhraní .NET Framework

Viz také

Referenční dokumentace

Debugger2 Rozhraní

EnvDTE80 – obor názvů