Compartilhar via


Método Debugger2.ExecuteStatement

Executa a instrução especificada. Se a TreatAsExpression o sinalizador será true, em seguida, a seqüência de caracteres é interpretada como uma expressão e saída é enviada para o Janela Comando.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (em EnvDTE80.dll)

Sintaxe

'Declaração
Sub ExecuteStatement ( _
    Statement As String, _
    Timeout As Integer, _
    TreatAsExpression As Boolean _
)
void ExecuteStatement(
    string Statement,
    int Timeout,
    bool TreatAsExpression
)
void ExecuteStatement(
    [InAttribute] String^ Statement, 
    [InAttribute] int Timeout, 
    [InAttribute] bool TreatAsExpression
)
abstract ExecuteStatement : 
        Statement:string * 
        Timeout:int * 
        TreatAsExpression:bool -> unit
function ExecuteStatement(
    Statement : String, 
    Timeout : int, 
    TreatAsExpression : boolean
)

Parâmetros

  • Statement
    Tipo: String
  • Timeout
    Tipo: Int32

    O período de tempo limite, em milissegundos.

  • TreatAsExpression
    Tipo: Boolean

    trueSe a seqüência de caracteres deve ser interpretado como uma expressão; Caso contrário, false.

Comentários

ExecuteStatementexecuta a instrução especificada. Uma instrução difere de uma expressão em que uma instrução pode consistir em uma ou mais expressões. Portanto, normalmente nenhum valor pode ser associado ou retornado pela execução da instrução.

Alguns idiomas, como Visual Basic, suporte a uma sintaxe de linguagem que depende do contexto em que uma instrução é exibida para indicar como a instrução é avaliada. Por exemplo, se seu Visual Basic código tem a instrução, a = 1, ele é interpretado como uma expressão se o código aparece dentro de um se...Em seguida, a instrução. Ele é interpretado como uma instrução se ele aparecer sozinho em uma linha. Os testes de expressão a contra o valor de 1, definirá a instrução a igual a 2. Veja o exemplo abaixo.

A saída deste método é enviada para o Janela Comando.

Exemplos

O exemplo a seguir demonstra como usar o ExecuteStatement método.

Para testar esse método:

  1. Defina o ponto de interrupção no aplicativo de destino depois que um valor é atribuído à variável.

  2. Execute o aplicativo de destino no modo de depuração.

  3. Quando o aplicativo parar no ponto de interrupção, execute o add-in.

  4. O valor da variável muda para um novo valor.

public static void ExecuteStatement(EnvDTE80.DTE2 dte)
{
    // Setup debug Output window.
    Window w = 
    (Window)dte.Windows.Item(EnvDTE.Constants.vsWindowKindOutput);
    w.Visible = true;
    OutputWindow ow = (OutputWindow)w.Object;
    OutputWindowPane owp = ow.OutputWindowPanes.Add("ExecuteStatement 
    Method Test");
    owp.Activate();

    EnvDTE80.Debugger2 debugger = (EnvDTE80.Debugger2)dte.Debugger;
    debugger.ExecuteStatement("tempC = 100.0", 100, false);
    owp.OutputString("The new value of tempC variable is: " + 
                     debugger.GetExpression("tempC", false, 1).Value);
}
' The following executes a statement, effectively
' setting a to the value of 2.
Sub SetVariable()
    DTE2.Debugger.ExecuteStatement("a = 2", -1, False)
End Sub

' The following tests the value of a against
' the value of 2.  False is displayed in the command window.

Sub TestVariable()
    DTE2.Debugger.ExecuteStatement("a = 2", -1, True)
End Sub

Segurança do .NET Framework

Consulte também

Referência

Debugger2 Interface

Namespace EnvDTE80