다음을 통해 공유


Debugger.ExecuteStatement 메서드

지정한 문을 실행합니다. TreatAsExpression 플래그가 true이면 문자열이 식으로 해석되고 출력은 명령 창에 전달됩니다.

네임스페이스:  EnvDTE
어셈블리:  EnvDTE(EnvDTE.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
)

매개 변수

  • Timeout
    형식: System.Int32
    제한 시간입니다(밀리초).
  • TreatAsExpression
    형식: System.Boolean
    문자열을 식으로 처리할지 여부를 나타냅니다.문자열을 식으로 해석해야 하면 True이고, 그렇지 않으면 False입니다.

설명

ExecuteStatement는 지정된 문을 실행합니다. 문은 하나 이상의 식으로 구성될 수 있다는 점에서 식과 다릅니다. 따라서 문을 실행하는 경우에는 일반적으로 값을 연결하거나 반환할 수 없습니다.

Visual Basic 같은 일부 언어에서는 문이 나오는 컨텍스트에 따라 각 문의 실행 방법이 결정되는 언어 구문을 지원합니다. 예를 들어 Visual Basic 코드에 a = 1 문이 있는 경우 이 코드가 If...Then 문에 포함되면 a = 1 문이 식으로 해석됩니다. 자세한 내용은 If...Then...Else 문(Visual Basic)을 참조하십시오. 이 경우 위의 코드가 줄에 단독으로 나타나면 문으로 해석됩니다. 식으로 해석될 경우에는 a 값이 1인지 테스트하고 문으로 해석될 경우에는 a의 값을 2로 설정합니다. 다음 예제를 참조하십시오.

이 메서드의 출력 내용은 명령 창에 전달됩니다.

예제

다음 예제에서는 ExecuteStatement 메서드의 사용 방법을 보여 줍니다.

이 메서드를 테스트하려면

  1. 변수에 값을 할당한 후에 대상 응용 프로그램에 중단점을 설정합니다.

  2. 디버그 모드에서 대상 응용 프로그램을 실행합니다.

  3. 응용 프로그램이 중단점에서 멈추면 추가 기능을 실행합니다.

  4. 변수의 값이 새 값으로 변경됩니다.

public static void ExecuteStatement(DTE dte)
{
    // Setup the 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();

    dte.Debugger.ExecuteStatement("tempC = 100.0", 100, false);
}
Shared Sub ExecuteStatementTest(ByRef dte As EnvDTE.DTE)
    dte.Debugger.ExecuteStatement("tempC = 100.0", 100, False)
End Sub

.NET Framework 보안

  • 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.

참고 항목

참조

Debugger 인터페이스

EnvDTE 네임스페이스