다음을 통해 공유


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

참고 항목

ADSI 오류 코드

IADsExtension

IADsExtension::P rivateInvoke

IDispatch::GetIDsOfNames