IADsExtension::P rivateGetIDsOfNames 메서드(iads.h)
IADsExtension::P rivateGetIDsOfNames 메서드는 ADSI가 이중 또는 디스패치 인터페이스를 지원하는 데 확장이 사용됨을 확인한 후 집계자 ADSI에 의해 호출됩니다. 메서드는 형식 데이터를 사용하여 IDispatch::GetIDsOfNames를 사용하여 DISPID를 가져올 수 있습니다.
구문
HRESULT PrivateGetIDsOfNames(
REFIID riid,
OLECHAR **rgszNames,
unsigned int cNames,
LCID lcid,
DISPID *rgDispid
);
매개 변수
riid
다음에 사용하도록 예약됩니다. IID_NULL 합니다.
rgszNames
매핑할 전달된 이름의 배열입니다.
cNames
매핑할 이름의 수입니다.
lcid
이름을 해석할 로캘 컨텍스트입니다.
rgDispid
호출자가 할당한 배열- 각 요소에는 rgszNames 배열에 전달된 이름 중 하나에 해당하는 식별자가 포함됩니다. 첫 번째 요소는 멤버 이름을 나타냅니다. 후속 요소는 각 멤버의 매개 변수를 나타냅니다.
반환 값
반환 값은 표준 IDispatch::GetIDsOfNames 메서드의 값과 동일합니다. 다른 반환 값에 대한 자세한 내용은 ADSI 오류 코드를 참조하세요.
설명
모든 매개 변수는 표준 IDispatch::GetIDsOfNames()의 해당 매개 변수와 동일한 의미를 갖습니다. 확장 구성 요소는 지원되는 이중 인터페이스에 정의된 각 메서드 또는 속성에 대한 고유 식별자(rgDispID)를 반환합니다. 고유성은 확장 구성 요소 내에서 적용됩니다. ADSI 공급자는 모든 확장 개체의 DISPID와 ADSI(집계자) 자체의 고유성을 확인해야 합니다. rgDispID 매개 변수는 1에서 16777215(2^24-1) 또는 -1(DISPID_UNKNOWN) 사이여야 합니다.
예제
다음 C/C++ 코드 예제에서는 이 메서드의 제네릭 구현을 보여줍니다.
STDMETHOD(PrivateGetIDsOfNames)(REFIID riid, OLECHAR ** rgszNames, unsigned int cNames, LCID lcid, DISPID * rgdispid)
{
if (rgdispid == NULL)
{
return E_POINTER;
}
return DispGetIDsOfNames(m_pTypeInfo, rgszNames, cNames, rgdispid);
}
요구 사항
지원되는 최소 클라이언트 | Windows Vista |
지원되는 최소 서버 | Windows Server 2008 |
대상 플랫폼 | Windows |
헤더 | iads.h |
DLL | Activeds.dll |