共用方式為


IGlobalInterfaceTable::GetInterfaceFromGlobal 方法 (objidl.h)

擷取呼叫 Apartment 可使用之物件上介面的指標。 此介面目前必須在全域介面數據表中註冊。

語法

HRESULT GetInterfaceFromGlobal(
  [in]  DWORD  dwCookie,
  [in]  REFIID riid,
  [out] void   **ppv
);

參數

[in] dwCookie

識別介面 (及其物件) ,並透過 呼叫 IGlobalInterfaceTable::RegisterInterfaceInGlobal 來擷取。

[in] riid

介面的 IID。

[out] ppv

所要求介面之指標的指標。

傳回值

這個方法可以傳回下列值。

傳回碼 描述
S_OK
已成功完成命令。
E_INVALIDARG
一或多個參數無效。

備註

在全域介面數據表中註冊介面之後,Apartment 可以使用提供的 Cookie 呼叫 GetInterfaceFromGlobal 方法,以取得此介面的指標。 介面的這個指標可以用於呼叫 Apartment,但不能由進程中的其他 Apartment 使用。

應用程式負責協調 IGlobalInterfaceTable::RevokeInterfaceFromGlobal 呼叫期間全域變數的存取。 也就是說,應用程式應該確保一個線程不會呼叫 RevokeInterfaceFromGlobal ,而另一個線程則會使用相同的 Cookie 呼叫 GetInterfaceFromGlobal 。 允許對相同 Cookie 的 GetInterfaceFromGlobal 進行多個呼叫。

GetInterfaceFromGlobal 方法會在 ppv 參數中取得的指標上呼叫 AddRef。 呼叫端必須負責在此指標上呼叫 Release

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows 2000 Server [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 objidl.h (包含 ObjIdl.h)

另請參閱

IGlobalInterfaceTable