Шаг 53 - DispGetlDsOfNames

По информации о типе преобразует заданные имена в соответствующие DISPID. Это рекомендуемая реализация IDispatch::GetIDsOfNames.

HRESULT DispGetIDsOfNames
(
	ITypeInfo*ptinfo,
	OLECHAR FAR* FAR* rgszNames,
	unsigned int cNames,
	DISPID FAR* rgdispid
);

Параметры:

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

Код возвратаЗначение
S_OKИнтерфейс поддерживается.
E_INVALIDARGОдин из параметров неверен.
DISP_E_UNKNOWNNAMEОдно или несколько заданных имен неизвестны. В элементах возвращаемого массива DISPID, соответствующих неизвестным именам, будет содержаться значение DISPID_UNKNOWN.
ДругиеМогут также возвращаться любые коды возврата ITypelnfo-Invoke.

Пример:
Следующий код из примера Lines (файл Points.cpp) реализует функцию-член GetlDs-OfNames для класса CPoints с помощью DispGetlDsOfNames.

STDMETHODIMP CPoints::GetIDsOfNames( 
	REFIID riid,
	OLECHAR FAR* FAR* rgszNames,
	UINT cNames,
	LCID lcid,
	DISPID FAR* rgdispid) 
{
	return DispGetIDsOfNames(m_ptinfo, rgszNames, cNames, rgdispid); 
}

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 02.03.2002