IBaseFilter::JoinFilterGraph 方法 (strmif.h)

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

方法 JoinFilterGraph 會通知篩選條件已聯結或離開篩選圖表。

語法

HRESULT JoinFilterGraph(
  [in] IFilterGraph *pGraph,
  [in] LPCWSTR      pName
);

參數

[in] pGraph

篩選圖形管理員的 IFilterGraph 介面指標,如果篩選離開圖表,則為 NULL

[in] pName

指定篩選名稱之寬字元字串的指標。

傳回值

如果成功,則傳回S_OK,或指出錯誤原因的 HRESULT 值。

備註

當 Filter Graph 管理員將篩選新增至篩選圖形時,它會使用本身的指標呼叫此方法。 它會透過 pName 參數為篩選條件的這個實例指派名稱。 呼叫 IBaseFilter::QueryFilterInfo 方法,即可擷取名稱。

當 Filter Graph 管理員從圖形中移除篩選時,它會使用 NULL 指標呼叫此方法。

應用程式絕對不應該呼叫這個方法。 若要將篩選新增至圖形,請在篩選圖形管理員上呼叫 IFilterGraph::AddFilter 方法。

篩選開發人員:篩選可以儲存 IFilterGraph 介面指標,並查詢其他 Filter Graph Manager 介面。 不過,它絕對不能在篩選圖形管理員上保存參考計數。 這麼做會建立循環參考計數,因為篩選圖形管理員會在篩選上保留參考計數。 循環參考計數可防止介面正確釋放,這可能會導致死結。 IFilterGraph 介面保證有效,直到 Filter Graph Manager 使用 NULL 值再次呼叫此方法為止。 如需此方法的實作,請參閱 CBaseFilter::JoinFilterGraph 方法。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 strmif.h (包含 Dshow.h)
程式庫 Strmiids.lib

另請參閱

錯誤和成功碼

IBaseFilter 介面