Share via


Debugger.Stop (Método)

Detiene la depuración, terminación o desasociación de todos los procesos asociados.

Espacio de nombres:  EnvDTE
Ensamblado:  EnvDTE (en EnvDTE.dll)

Sintaxis

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

Parámetros

  • WaitForDesignMode
    Tipo: Boolean

    Se establece en true si la sesión de depuración sólo debe detenerse cuando llegue al modo de diseño. Se establece en false si piensa detener la depuración, pero necesita realizar otras tareas en la macro incluso antes de que el depurador entre en el modo de diseño.

Comentarios

Stop detiene la depuración y finaliza el proceso asociado. Para obtener más información, vea <PAVEOVER> Cómo: Detener una depuración o una ejecución.

Ejemplos

En el siguiente ejemplo se muestra cómo utilizar el método Stop.

Para probar este método:

  1. Establezca un punto de interrupción en la aplicación de destino.

  2. Ejecute la aplicación de destino en el modo de depuración.

  3. Cuando la aplicación se detenga en el punto de interrupción, ejecute el complemento.

public static void Stop(DTE dte)
{
    EnvDTE.Debugger debugger = (EnvDTE.Debugger)dte.Debugger;
    debugger.Stop(true);
}
Shared Sub Stop(ByRef dte As EnvDTE.DTE)
    dte.Debugger. Stop(True)
End Sub

' WaitForDesignMode is true
Sub StopDebuggingAndNotifySync
    DTE.Debugger.Stop(True)
    MsgBox("Debugger has been stopped, for sure.")
End Sub

' WaitForDesignMode is false
Sub StopDebuggingAndNotifyAsync

    DTE.Debugger.Stop(False)

     ' Depending on how long it takes to stop debugging, 
     ' the environment may or may not yet be in Design mode.
    If DTE.Debugger.CurrentMode <> dbgDebugMode.dbgDesignMode
        MsgBox("Debugger still stopping")
    Else
        MsgBox("Debugger has been stopped")
    End If
End Sub

Nota

Las macros se ejecutan en el subproceso principal de Visual Studio.El código siguiente no funciona y la macro entra en un bucle indefinidamente, ya que el entorno de desarrollo integrado (IDE) nunca tiene oportunidad de entrar en el modo de diseño.En su lugar, hay que recurrir a un mecanismo diferente de subproceso o agrupación.

' Bad Code Example.
Sub StopDebuggingAndWaitForDesign
    DTE.Debugger.Stop(False)

    While DTE.Debugger.CurrentMode <> dbgDebugMode.dbgDesignMode
        System.Threading.Thread.Sleep(50)
    End While

    MsgBox("Debugger has been stopped")

        End Sub

Seguridad de .NET Framework

Vea también

Referencia

Debugger Interfaz

EnvDTE (Espacio de nombres)