共用方式為


使用 C 控制篩選圖形

[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。

如果您要以 C (而非 C++) 撰寫 DirectShow 應用程式,則必須使用 vtable 指標來呼叫方法。 下列範例說明如何從以 C 撰寫的應用程式呼叫 IUnknown::QueryInterface 方法:

pGraph->lpVtbl->QueryInterface(pGraph, &IID_IMediaEvent, (void **)&pEvent);

以下顯示 C++ 中的對等呼叫:

pGraph->QueryInterface(IID_IMediaEvent, (void **)&pEvent);

在 C 中,COM 介面會定義為結構。 lpVtbl成員是 vtable) (介面方法資料表的指標。 所有方法都會採用額外的參數,這是介面的指標。

附錄