Метод IGlobalInterfaceTable::GetInterfaceFromGlobal (objidl.h)
Извлекает указатель на интерфейс объекта, который может использовать вызывающая квартира. Этот интерфейс должен быть зарегистрирован в таблице глобального интерфейса.
Синтаксис
HRESULT GetInterfaceFromGlobal(
[in] DWORD dwCookie,
[in] REFIID riid,
[out] void **ppv
);
Параметры
[in] dwCookie
Идентифицирует интерфейс (и его объект) и извлекается с помощью вызова метода IGlobalInterfaceTable::RegisterInterfaceInGlobal.
[in] riid
IID интерфейса.
[out] ppv
Указатель на указатель для запрошенного интерфейса.
Возвращаемое значение
Этот метод может возвращать следующие значения.
Код возврата | Описание |
---|---|
|
Метод завершился успешно. |
|
Один или несколько параметров являются недопустимыми. |
Комментарии
После регистрации интерфейса в глобальной таблице интерфейсов квартира может получить указатель на этот интерфейс, вызвав метод GetInterfaceFromGlobal с предоставленным файлом cookie. Этот указатель на интерфейс можно использовать в вызывающей квартире, но не в других квартирах в процессе.
Приложение отвечает за координацию доступа к глобальной переменной во время вызовов IGlobalInterfaceTable::RevokeInterfaceFromGlobal. То есть приложение должно гарантировать, что один поток не вызывает RevokeInterfaceFromGlobal , а другой поток вызывает GetInterfaceFromGlobal с тем же файлом cookie. Разрешено несколько вызовов GetInterfaceFromGlobal для одного файла cookie.
Метод GetInterfaceFromGlobal вызывает AddRef для указателя, полученного в параметре ppv . Вызывающий объект несет ответственность за вызов release для этого указателя.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Профессиональная [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows 2000 Server [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | objidl.h (включая ObjIdl.h) |