Metodo Debugger2.ExecuteStatement (String, Int32, Boolean)
Esegue l'istruzione specificata. Se il flag TreatAsExpression è true, la stringa viene interpretata come un'espressione e l'output viene inviato a Finestra di comando.
Spazio dei nomi: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Sintassi
'Dichiarazione
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
)
Parametri
- Statement
Tipo: System.String
- Timeout
Tipo: System.Int32
Periodo di timeout, in millisecondi.
- TreatAsExpression
Tipo: System.Boolean
true se la stringa deve essere interpretata come un'espressione; in caso contrario false.
Implementa
Debugger.ExecuteStatement(String, Int32, Boolean)
Note
ExecuteStatement esegue l'istruzione specificata. A differenza di un'espressione, un'istruzione può essere costituita da una o più espressioni. Di conseguenza, non è possibile associare o restituire alcun valore tramite l'esecuzione di un'istruzione.
In alcuni linguaggi, ad esempio Visual Basic, è supportata una sintassi basata sul contesto in cui un'istruzione sembra indicare il modo in cui quest'ultima viene valutata. Se, ad esempio, il codice Visual Basic contiene un'istruzione, a = 1, verrà interpretata come un'espressione se il codice compare all'interno di un'istruzione If…Then. Verrà interpretata come un'istruzione se compare da sola su una riga. L'espressione verifica a rispetto al valore 1, l'istruzione imposterà a su 2. Vedere l'esempio riportato di seguito.
L'output di questo metodo viene inviato a Finestra di comando.
Esempi
Nell'esempio riportato di seguito viene illustrato come utilizzare il metodo ExecuteStatement.
Per verificare il metodo:
Impostare il punto di interruzione nell'applicazione di destinazione dopo l'assegnazione di un valore alla variabile.
Eseguire l'applicazione di destinazione in modalità debug.
Quando l'applicazione si interrompe al punto di interruzione, eseguire il componente aggiuntivo.
La variabile assume un nuovo valore.
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
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.