CMediaControl.GetIDsOfNames 메서드

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngineMedia Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 DirectShow 대신 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

단일 멤버 함수와 선택적 매개 변수 집합을 CMediaControl::Invoke 멤버 함수에 대한 후속 호출 시 사용할 수 있는 해당 DISPID(정수 디스패치 식별자) 집합에 매핑합니다.

구문

HRESULT GetIDsOfNames(
   REFIID  riid,
   OLECHAR **rgszNames,
   UINT    cNames,
   LCID    lcid,
   DISPID  *rgdispid
);

매개 변수

riid

참조 식별자입니다. 다음에 사용하도록 예약됩니다. NULL이어야 합니다.

rgszNames

매핑할 전달된 이름 배열에 대한 포인터의 주소입니다.

cNames

매핑할 이름의 수입니다.

lcid

이름을 해석할 로캘 컨텍스트입니다.

rgdispid

호출자가 할당한 배열에 대한 포인터이며, 각 요소에는 rgszNames 배열에 전달된 이름 중 하나에 해당하는 ID가 포함됩니다. 첫 번째 요소는 멤버 이름을 나타냅니다. 후속 요소는 각 멤버의 매개 변수를 나타냅니다.

반환 값

다음 값 중 하나를 반환합니다.

반환 코드 설명
DISP_E_UNKNOWN_CLSID
CLSID가 인식되지 않았습니다.
DISP_E_UNKNOWNNAME
하나 이상의 이름을 알 수 없습니다. 반환된 DISPID에는 알 수 없는 이름에 해당하는 각 항목에 대한 DISPID_UNKNOWN 포함됩니다.
E_OUTOFMEMORY
메모리가 부족합니다.
S_OK
성공.

요구 사항

요구 사항
헤더
Ctlutil.h(Streams.h 포함)
라이브러리
Strmbase.lib(소매 빌드);
Strmbasd.lib(디버그 빌드)

추가 정보

CMediaControl 클래스