Handle auf Window funktioniert nicht.



  • Hallo @alle.

    Ich mache grade ein kleines Videoprogramm zum lernen. Nun brauche ich für die Anzeige den Handle auf ein Window in dem das Angezeigt werden soll. Ich gebe das an, aber es wird trotzdem ein neues erstellt.

    ------------------------------------------------------
    IGraphBuilder* m_pGraphB;
    IMediaControl* m_pMediaCtrl;
    IMediaEventEx* m_pMediaEvent;
    IVideoWindow* m_pVideoWin;

    CoInitialize(NULL);
    CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, IID_IGraphBuilder, (void **)&m_pGraphB);

    m_pGraphB->QueryInterface(IID_IMediaEventEx, reinterpret_cast<void**>(&m_pMediaEvent));

    m_pGraphB->QueryInterface(IID_IMediaControl, reinterpret_cast<void**>(&m_pMediaCtrl));

    m_pGraphB->QueryInterface(IID_IVideoWindow, reinterpret_cast<void**>(&m_pVideoWin));
    m_pVideoWin->put_Owner( (OAHWND) m_hWnd );

    m_pVideoWin->put_WindowStyle(WS_CHILD | WS_CLIPSIBLINGS);

    RECT grc;
    ::GetClientRect(((CtestApp*)AfxGetApp())->pMWnd->m_hWnd, &grc);
    m_pVideoWin->SetWindowPosition(0, 0, grc.right, grc.bottom);

    m_pGraphB->RenderFile(m_file.AllocSysString(), NULL);
    m_pMediaCtrl->Run();
    ------------------------------------------------
    Mein Problem ist, dass er das irgendwie nicht rafft. Statt das Video im Dialog anzuzeigen, wird es weiterhin in einem neuen Window angezeigt.

    Gruß
    Herzdame


Anmelden zum Antworten