CFactoryTemplate 類別

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

提供建立類別處理站的範本。

在 DirectShow 中,類別處理站是使用 CFactoryTemplate 類別特製化,也稱為 Factory 範本。 每個類別處理站都會保留 Factory 範本的指標。 Factory 範本包含 COM 物件的相關資訊,包括物件的類別識別碼 (CLSID) ,以及建立物件的函式指標。

在您的 DLL 中,宣告名為 g_Templates的處理站範本全域陣列。 針對 DLL 中的每個物件包含一個 Factory 範本。 當 DllGetClassObject 函式建立新的類別處理站時,它會搜尋具有相符 CLSID 的範本陣列。 假設找到一個,它會建立一個類別處理站,以保存相符範本的指標。 當用戶端呼叫 IClassFactory::CreateInstance時,類別處理站會呼叫範本中定義的具現化函式。

如需詳細資訊,請參閱 如何建立 DirectShow 篩選 DLL

公用成員變數 Description
m_Name 篩選的名稱。
m_ClsID 物件的 CLSID 指標。
m_lpfnNew 建立 物件實例之函式的指標。
m_lpfnInit 從 DLL 進入點呼叫之函式的指標。
m_pAMovieSetup_Filter AMOVIESETUP_FILTER結構的指標。
公用方法 Description
IsClassID 判斷 CLSID 是否符合這個類別範本。
CreateInstance 呼叫 類別的物件建立函式。

規格需求

需求
標頭
Combase.h (包含 Streams.h)
程式庫
Strmbase.lib;
Strmbasd.lib

另請參閱

基類參考