(dbgeng.h) IDebugClient::EndSession 方法
EndSession 方法會結束目前的調試程式會話。
語法
HRESULT EndSession(
[in] ULONG Flags
);
參數
[in] Flags
指定如何結束會話。 旗標 可以是下列其中一個值:
旗標 | 描述 |
---|---|
DEBUG_END_PASSIVE | 執行工作階段的清除。 |
DEBUG_END_ACTIVE_TERMINATE | 先嘗試終止所有使用者模式目標,再執行會話的清除。 |
DEBUG_END_ACTIVE_DETACH | 在執行會話的清除之前,嘗試中斷與所有目標的連線。 |
DEBUG_END_REENTRANT | 只執行不需要取得鎖定的清除。 如需詳細資訊,請參閱一節。 |
DEBUG_END_DISCONNECT |
請勿結束會話。 中斷用戶端與會話的連線,並停用用戶端。
此旗標適用於遠端用戶端中斷連線時。 它會產生有關中斷連線的伺服器訊息。 |
傳回值
這個方法也可能傳回錯誤值。 如需詳細資訊,請參閱 傳回值 。
傳回碼 | 描述 |
---|---|
|
此方法成功。 |
備註
這個方法可以隨時呼叫 ,並將 Flags 設定為 DEBUG_END_REENTRANT。 例如,如果應用程式需要結束,但另一個線程正在使用引擎,則這個方法可用來盡可能執行清除。
使用 DEBUG_END_REENTRANT 可能會讓引擎處於不確定狀態。 如果使用這個旗標,則不應該對引擎進行後續呼叫。
如需調試程式會話的詳細資訊,請參閱偵錯 會話和執行模型。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | dbgeng.h (包含 Dbgeng.h) |