Share via


CBaseControlWindow.NotifyOwnerMessage 메서드

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

메서드는 NotifyOwnerMessage 비디오 창에 특정 메시지를 전달합니다.

구문

HRESULT NotifyOwnerMessage(
   long     hwnd,
   long     uMsg,
   LONG_PTR wParam,
   LONG_PTR lParam
);

매개 변수

hwnd

비디오 창에 대한 핸들입니다.

uMsg

메시지 세부 정보입니다.

wParam

첫 번째 메시지 매개 변수입니다.

lParam

두 번째 메시지 매개 변수입니다.

반환 값

NO_ERROR 반환합니다.

설명

비디오 창이 다른 창의 자식인 경우 특정 최상위 창 메시지를 수신하지 않습니다. 이러한 메시지는 해당 동작에 영향을 줄 수 있으므로 렌더러에 유용할 수 있습니다. NotifyOwnerMessage 는 다음 메시지 중 어느 것을 비디오 창에 전달합니다.

  • WM_ACTIVATEAPP
  • WM_DEVMODECHANGE
  • WM_DISPLAYCHANGE
  • WM_PALETTECHANGED
  • WM_PALETTEISCHANGING
  • WM_QUERYNEWPALETTE
  • WM_SYSCOLORCHANGE

IVideoWindow PID(플러그 인 배포자)가 창을 다른 창의 자식으로 만들도록 요청할 수 있습니다. 이 경우 PID는 소유 창으로 전송될 수 있는 특정 메시지를 찾습니다. 그런 다음 PID는 해당 메시지를 소유 창으로 전달합니다. 메시지에 대한 기본 처리는 Win32 SendMessage 함수를 호출하여 소유 창 프로시저로 동기적으로 보내는 것입니다.

요구 사항

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

추가 정보

CBaseControlWindow 클래스