共用方式為


Debugger3.ExecuteStatement 方法

執行指定的陳述式。 如果 TreatAsExpression 旗標為 true,則字串會解譯成運算式,而且輸出會傳送到 命令視窗

命名空間:  EnvDTE90
組件:  EnvDTE90 (在 EnvDTE90.dll 中)

語法

'宣告
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
)

參數

  • Statement
    類型:String

    要執行的陳述式。

  • Timeout
    類型:Int32

    逾時的等待時間,以毫秒為單位。

  • TreatAsExpression
    類型:Boolean

    如果字串要解譯成運算式,則為 true,否則為 false。

備註

ExecuteStatement 會執行指定的陳述式。 陳述式與運算式的不同之處在於,陳述式可由一或多個運算式組成。 因此,陳述式的執行無法使某個值產生關聯,也無法傳回值。

某些語言 (例如 Visual Basic) 支援需要靠陳述式出現所在之內容指出如何評估該陳述式的語言語法。 例如,如果 Visual Basic 程式碼中有一陳述式 a = 1,當此程式碼出現在 If…Then 陳述式內時,它會解譯成運算式。 當它單獨出現在某一行時,則會解譯成陳述式。 運算式會以值 1 對 a 進行測試,而陳述式則是會設定 a 等於 2。 請參閱下列範例。

這個方法的輸出將傳送到 命令視窗

範例

下列範例示範如何使用 ExecuteStatement 方法。

若要測試這個方法:

  1. 請先指派一個值給變數,然後在目標應用程式中設定中斷點。

  2. 在偵錯模式執行目標應用程式。

  3. 當應用程式在中斷點停止時,請執行增益集。

  4. 變數值會變更為新的值。

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();

    EnvDTE90.Debugger3 debugger = (EnvDTE90.Debugger3)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

.NET Framework 安全性

請參閱

參考

Debugger3 介面

EnvDTE90 命名空間