Справочник по технологии COM
Страница 62. ITypeLib::GetDocumentation


 

ITypeLib::GetDocumentation

Возвращает строку справочной информации для библиотеки, полное имя файла справочной системы и идентификатор контекста внутри этого файла.

HRESULT GetDocumentation
(
int index,
BSTR FAR* pBstrName,
BSTR FAR* pBstrDocString,
unsigned long FAR* pdwHelpContext,
BSTR FAR* pBstrHelpFile
);

Параметры:
index
Индекс описания типа, для которого возвращается документация. Если он равен -1, то возвращается документация для самой библиотеки.
pBstrName
Возвращается BSTR, содержащая имя соответствующего элемента. Параметр может быть NULL, если имя вызывающему не требуется.
pBstrDocString
Возвращается BSTR, содержащая строку документации для соответствующего элемента. Параметр может быть NULL, если строка документации вызывающему не нужна.
pdwHelpContext
Возвращает для соответствующего элемента идентификатор контекста в файле интерактивной справочной системы. Параметр может быть NULL, если идентификатор контекста вызывающему не нужен.
pbstrHelpFile
Возвращает BSTR, содержащую полное имя файла интерактивной справочной системы. Параметр может быть NULL, если имя файла вызывающему не нужно.

Коды возврата:
Из возвращенного HRESULT получают один из следующих кодов возврата:

Код возврата Значение
S_OK Успех.
STG_E_INSUFFICIENTMEMORY He хватает памяти.
E_INVALIDARG Один или несколько аргументов неверны.
TYPE_E_IOERROR Функция не может выполнить запись в файл.
TYPE_E_INVDATAREAD Функция не может читать из файла.
TYPE_E_UNSUPFORMAT Библиотека типа имеет старый формат.
TYPE_E_INVALIDSTATE He удается открыть библиотеку типа.
TYPE_E_ELEMENTNOTFOUND Элемент не найден.

Комментарии:
BSTR, возвращаемые через параметры pBstrName, pBstrDocString и pBstrHelpFile, должен освобождать вызывающий.

Пример:

for (i=0; i < utypeinfoCount; i++) 
{
CHECKRESULT(ptlib->GetDocumentation(i, &bstrName, NULL, NULL, NULL));
SysFreeString(bstrName);
}

 
Следующая статья »