MFTRegisterLocal 函式 (mfapi.h)

在呼叫端的程式中註冊媒體基礎轉換 (MFT) 。

語法

HRESULT MFTRegisterLocal(
  [in] IClassFactory                *pClassFactory,
  [in] REFGUID                      guidCategory,
  [in] LPCWSTR                      pszName,
  [in] UINT32                       Flags,
  [in] UINT32                       cInputTypes,
  [in] const MFT_REGISTER_TYPE_INFO *pInputTypes,
  [in] UINT32                       cOutputTypes,
  [in] const MFT_REGISTER_TYPE_INFO *pOutputTypes
);

參數

[in] pClassFactory

類別處理站物件的 IClassFactory 介面指標。 類別處理站會建立 MFT。

[in] guidCategory

指定 MFT 類別的 GUID。 如需 MFT 類別清單,請參閱 MFT_CATEGORY

[in] pszName

寬字元 Null 終止字串,其中包含 MFT 的易記名稱。

[in] Flags

_MFT_ENUM_FLAG列舉中零個或多個旗標的位 OR

[in] cInputTypes

pInputTypes 陣列中的項目數目。

[in] pInputTypes

MFT_REGISTER_TYPE_INFO 結構的陣列指標。 數位的每個成員都會指定 MFT 支援的輸入格式。 如果 cInputTypes 為零,這個參數可以是 NULL

[in] cOutputTypes

pOutputTypes 陣列中的項目數目。

[in] pOutputTypes

MFT_REGISTER_TYPE_INFO 結構的陣列指標。 陣列的每個成員都會定義 MFT 支援的輸出格式。 如果 cOutputTypes 為零,這個參數可以是 NULL

傳回值

如果此函式成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

此函式的主要目的是讓 MFT 可供自動拓撲解析使用,而不讓 MFT 可供其他進程或應用程式使用。

呼叫此函式之後,可以使用 MFT_ENUM_FLAG_LOCALMFT 旗標呼叫 MFTEnumEx 函式來列舉 MFT。 MFT 可以從相同的進程內列舉,但其他進程看不到。

pClassFactory 參數會指定建立 MFT 的類別 Factory 物件。 類別處理站的 IClassFactory::CreateInstance 方法必須傳回支援 IMFTransform 介面的物件。

注意MFTEnumEx 函式會擷取 IMFActivate 指標的清單。 不過,類別處理站不需要支援 IMFActivate 介面。 相反地, MFTEnumEx 函 式會提供會包裝類別處理站的 IMFActivate 實作。
 
若要從目前的進程取消註冊 MFT,請呼叫 MFTUnregisterLocal

如果您需要在受保護的媒體路徑 (PMP) 程式中註冊 MFT,請使用 IMFLocalMFTRegistration 介面。

規格需求

需求
最低支援的用戶端 Windows 7 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 R2 [僅限桌面應用程式]
目標平台 Windows
標頭 mfapi.h
程式庫 Mfplat.lib
Dll Mfplat.dll

另請參閱

MFTRegisterLocalByCLSID

媒體基礎函式