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


Метод ITypeLib::FindName (oaidl.h)

Обнаруживает экземпляры описания типа в библиотеке типов. Это позволяет быстро проверить, существует ли имя в библиотеке типов.

Синтаксис

HRESULT FindName(
  [in, out] LPOLESTR  szNameBuf,
  [in]      ULONG     lHashVal,
  [out]     ITypeInfo **ppTInfo,
  [out]     MEMBERID  *rgMemId,
  [in, out] USHORT    *pcFound
);

Параметры

[in, out] szNameBuf

Имя, которое требуется найти.

[in] lHashVal

Хэш-значение для ускорения поиска, вычисленное функцией LHashValOfNameSys . Если lHashVal = 0, вычисляется значение.

[out] ppTInfo

Массив указателей на описания типов, которые содержат имя, указанное в szNameBuf. Этот параметр не может быть пустым.

[out] rgMemId

Массив найденных элементов; rgMemId[i] — это идентификатор MEMBERID, индексируемый в описании типа, заданном параметром ppTInfo[i]. Этот параметр не может быть пустым.

[in, out] pcFound

При входе показывает количество разыскиваемых экземпляров. Например, для поиска первого вхождения можно вызвать *pcFound = 1. Поиск останавливается при его обнаружении.

При выходе показывает число обнаруженных экземпляров. Если значения входного и выходного значения *pcFound идентичны, может быть больше описаний типов, содержащих имя.

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

Этот метод может возвращать одно из этих значений.

Код возврата Описание
S_OK
Успешно.
E_INVALIDARG
Один или несколько аргументов недопустимы.
E_OUTOFMEMORY
Недостаточно памяти для завершения операции.

Комментарии

Передача *pcFound = n означает, что в массивах ppTInfo и rgMemId достаточно места для пар n (ptinfo, memid). Функция возвращает MEMBERID_NIL в rgMemId[i], если имя в szNameBuf является именем сведений о типе в ppTInfo[i].

Требования

Требование Значение
Целевая платформа Windows
Header oaidl.h

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

ITypeLib