Debugger3.Stop 方法
停止偵錯並且終止所有附加的處理序或中斷它們的連結。
命名空間: EnvDTE90
組件: EnvDTE90 (在 EnvDTE90.dll 中)
語法
'宣告
Sub Stop ( _
WaitForDesignMode As Boolean _
)
void Stop(
bool WaitForDesignMode
)
void Stop(
[InAttribute] bool WaitForDesignMode
)
abstract Stop :
WaitForDesignMode:bool -> unit
function Stop(
WaitForDesignMode : boolean
)
參數
WaitForDesignMode
類型:Boolean設定為 true,表示唯有當進入設計模式時,偵錯工作階段才必須停止。 如果要停止偵錯,請設定為 false。 不過,您必須先在巨集中執行其他工作,才能讓偵錯工具進入設計模式。
備註
如需詳細資訊,請參閱<PAVEOVER> 如何:停止偵錯或停止執行。
範例
下列範例示範如何使用 Stop 方法。
若要測試這個方法:
請在目標應用程式中設定中斷點。
在偵錯模式執行目標應用程式。
當應用程式在中斷點停止時,請執行增益集。
public static void Stop(EnvDTE80.DTE2 dte)
{
EnvDTE90.Debugger3 debugger = (EnvDTE90.Debugger3)dte.Debugger;
debugger.Stop(false);
}
' WaitForDesignMode is true.
Sub StopDebuggingAndNotifySync
DTE2.Debugger.Stop(True)
MsgBox("Debugger has been stopped, for sure.")
End Sub
' WaitForDesignMode is false.
Sub StopDebuggingAndNotifyAsync
DTE2.Debugger.Stop(False)
' Depending on how long it takes to stop debugging,
' you may or may not yet be in Design mode.
If DTE2.Debugger.CurrentMode <> dbgDebugMode.dbgDesignMode
MsgBox("Debugger still stopping")
Else
MsgBox("Debugger has been stopped")
End If
End Sub
注意事項 |
---|
巨集是在 Visual Studio 的主執行緒上執行。因為 IDE 從未有機會進入設計模式,所以下列程式碼無法運作,而且巨集會無窮盡地以迴圈方式執行。請改為使用不同的執行緒或共用機制。 |
' Bad Code Example.
Sub StopDebuggingAndWaitForDesign
DTE2.Debugger.Stop(False)
While DTE2.Debugger.CurrentMode <> dbgDebugMode.dbgDesignMode
System.Threading.Thread.Sleep(50)
End While
MsgBox("Debugger has been stopped")
End Sub
.NET Framework 安全性
- 完全信任立即呼叫者。這個成員無法供部分信任的程式碼使用。如需詳細資訊,請參閱從部分受信任程式碼使用程式庫。