(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 請勿結束會話。 中斷用戶端與會話的連線,並停用用戶端。

此旗標適用於遠端用戶端中斷連線時。 它會產生有關中斷連線的伺服器訊息。

傳回值

這個方法也可能傳回錯誤值。 如需詳細資訊,請參閱 傳回值

傳回碼 描述
S_OK
此方法成功。

備註

這個方法可以隨時呼叫 ,並將 Flags 設定為 DEBUG_END_REENTRANT。 例如,如果應用程式需要結束,但另一個線程正在使用引擎,則這個方法可用來盡可能執行清除。

使用 DEBUG_END_REENTRANT 可能會讓引擎處於不確定狀態。 如果使用這個旗標,則不應該對引擎進行後續呼叫。

如需調試程式會話的詳細資訊,請參閱偵錯 會話和執行模型

規格需求

需求
目標平台 桌面
標頭 dbgeng.h (包含 Dbgeng.h)