Share via


CBaseControlWindow.put_Owner 메서드

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

메서드는 put_Owner 비디오 창의 부모 창을 설정하고 부모 창은 특정 메시지를 비디오 창으로 전달합니다.

구문

HRESULT put_Owner(
   OAHWND Owner
);

매개 변수

소유자

부모 창에 대한 핸들입니다.

반환 값

NOERROR를 반환합니다.

설명

내부적으로 이 메서드는 Microsoft Win32 SetParent 함수를 호출하여 새 소유자를 설정하고 부모 창의 스타일을 WS_CHILD 설정합니다. 그런 다음 부모 창은 특정 메시지 집합(특히 마우스 및 키보드 메시지)을 비디오 창으로 전달합니다.

비디오 창의 소유자를 설정한 후에는 필터 그래프를 해제하기 전에 소유자를 NULL 로 설정하고 소유자의 창 스타일을 WS_OVERLAPPED WS_CLIPCHILDREN 설정해야 합니다. 소유자를 NULL로 설정하면 이 메서드는 부모 창의 WS_CHILD 비트를 해제합니다. 소유자를 NULL로 설정하지 않으면 부모 창에서 비디오 창에 메시지를 계속 전달하며 애플리케이션이 닫히면 오류가 발생할 수 있습니다.

요구 사항

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

추가 정보

CBaseControlWindow 클래스