共用方式為


coSwitchCallCoNtext 函式 (combaseapi.h)

切換 CoGetCallCoNtext所使用的呼叫內容物件。

語法

HRESULT CoSwitchCallContext(
  [in, optional] IUnknown *pNewObject,
  [out]          IUnknown **ppOldObject
);

參數

[in, optional] pNewObject

新呼叫內容物件上介面的指標。 COM 會儲存此指標,而不新增指標的參考,直到使用另一個物件呼叫 CoSwitchCallCoNtext 為止。 如果您要呼叫CoSwitchCallCoNtext切換回原始呼叫內容,但沒有原始呼叫內容,則此參數可能是Null

[out] ppOldObject

指標變數的位址,接收目前進行中呼叫之呼叫內容物件的指標。 這個值會傳回,讓自訂封送器可以還原原始呼叫內容。 如果沒有進行中的呼叫,傳回的指標將會是 Null

傳回值

此函式可以傳回下列值。

傳回碼 描述
S_OK
函式成功。
E_OUT_OF_MEMORY
記憶體不足。

備註

自訂封送處理器會呼叫 CoSwitchCallCoNtext 來變更 CoGetCallCoNtext 函式所使用的呼叫內容物件。 分派抵達通話之前,自訂封送器會呼叫 CoSwitchCallCoNtext,並指定新的內容物件。 傳送回復之後,他們必須再次呼叫 CoSwitchCallCoNtext 來還原原始呼叫內容,這次會將指標傳遞至原始內容物件。

CoSwitchCallCoNtext 不會加入新內容物件的參考。 自訂封送處理器必須確保其內容物件的存留期會在整個呼叫中繼續,直到呼叫還原原始內容為止。 自訂封送處理器不應在設定其內容時釋放它們放入 ppOldObject 參數的值。

呼叫自訂封送處理器所提供的內容物件應該支援 IServerSecurity 介面。

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows 2000 Server [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 combaseapi.h (包含 Objbase.h)
程式庫 Ole32.lib
Dll Ole32.dll

另請參閱

CoGetCallCoNtext

IServerSecurity

COM 中的安全性