CBasePropertyPage.OnConnect 메서드

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

메서드는 OnConnect 속성 페이지와 연결된 개체에 대한 IUnknown 포인터를 제공합니다.

구문

virtual HRESULT OnConnect(
   IUnknown *pUnknown
);

매개 변수

pUnknown

개체의 IUnknown 인터페이스에 대한 포인터입니다.

반환 값

기본 클래스 구현은 S_OK 반환합니다.

설명

CBasePropertyPage::SetObjects 메서드는 메서드를 호출합니다OnConnect. pUnknown으로 지정된 개체에 대한 포인터를 저장하려면 이 메서드를 재정의합니다. pUnknown 포인터 자체를 저장하거나 다른 인터페이스에 대한 포인터를 쿼리할 수 있습니다. pUnknown 포인터를 저장하는 경우 반환하기 전에 OnConnectAddRef를 호출합니다.

CBasePropertyPage::OnActivate 메서드에서 저장된 포인터(또는 포인터)를 사용하여 대화 상자 속성에 대한 초기 값을 검색합니다. CBasePropertyPage::OnApplyChanges 메서드에서 변경 내용을 개체에 다시 적용합니다. CBasePropertyPage::OnDisconnect 메서드의 모든 포인터를 해제합니다.

예제

HRESULT CMyProp::OnConnect(IUnknown *pUnk)
{
    ASSERT(m_pOwningFilter == NULL);
    HRESULT hr;
    // Query pUnk for the filter's custom interface.
    hr = pUnk->QueryInterface(IID_ISomeCustomInterface,
             reinterpret_cast<void**>(&m_pOwningFilter));
    return hr;
}

요구 사항

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

추가 정보

CBasePropertyPage 클래스