Поделиться через


Функция LresultFromObject (oleacc.h)

Возвращает ссылку на указанный объект, похожую на дескриптор. Серверы возвращают эту ссылку при обработке WM_GETOBJECT.

Синтаксис

LRESULT LresultFromObject(
  [in] REFIID    riid,
  [in] WPARAM    wParam,
  [in] LPUNKNOWN punk
);

Параметры

[in] riid

Тип: REFIID

Идентификатор ссылки на интерфейс, предоставленный клиенту. Этот параметр IID_IAccessible.

[in] wParam

Тип: WPARAM

Значение, отправленное связанным WM_GETOBJECT сообщением в параметре wParam .

[in] punk

Тип: LPUNKNOWN

Адрес интерфейса IAccessible для объекта , соответствующего сообщению WM_GETOBJECT .

Возвращаемое значение

Тип: LRESULT

В случае успешного выполнения возвращает положительное значение, которое является ссылкой на объект .

В противном случае возвращает одно из значений в следующей таблице или другой стандартный код ошибки COM.

Код возврата Описание
E_INVALIDARG
Один или несколько аргументов недопустимы.
E_NOINTERFACE
Объект, указанный в параметре pAcc , не поддерживает интерфейс, указанный в параметре riid .
E_OUTOFMEMORY
Недостаточно памяти для хранения ссылки на объект.
E_UNEXPECTED
Произошла непредвиденная ошибка.

Комментарии

Серверы вызывают эту функцию только при обработке сообщения WM_GETOBJECT . Общие сведения о связи LresultFromObject с WM_GETOBJECT см. в разделе Как работает WM_GETOBJECT.

LresultFromObject увеличивает количество ссылок объекта. Если указатель интерфейса, переданный функции, не хранится (т. е. создается новый указатель интерфейса для объекта при каждом получении WM_GETOBJECT ), вызовите метод Release объекта для уменьшения числа ссылок до единицы. Затем клиент вызывает Release , и объект уничтожается. Дополнительные сведения см. в разделе Обработка WM_GETOBJECT.

Каждый раз, когда сервер обрабатывает WM_GETOBJECT для определенного объекта, он вызывает LresultFromObject , чтобы получить новую ссылку на объект. Серверы не сохраняют ссылку, возвращенную из LresultFromObject , из одного экземпляра обработки WM_GETOBJECT использовать в качестве возвращаемого значения сообщения при обработке последующих сообщений WM_GETOBJECT для того же объекта. Это приводит к тому, что клиент получает ошибку.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header oleacc.h
Библиотека Oleacc.lib
DLL Oleacc.dll
Распространяемые компоненты Активные специальные возможности 1.3 RDK в Windows NT 4.0 с пакетом обновления 6 (SP6) и более поздних версий и Windows 95

См. также раздел

Создание прокси-объектов

Принцип работы WM_GETOBJECT

Обработка WM_GETOBJECT

WM_GETOBJECT