IFileSourceFilter::GetCurFile 方法 (strmif.h)

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

方法 GetCurFile 會擷取目前檔案的名稱和媒體類型。

語法

HRESULT GetCurFile(
  [out] LPOLESTR      *ppszFileName,
  [out] AM_MEDIA_TYPE *pmt
);

參數

[out] ppszFileName

接收檔名的指標位址,做為 OLESTR 類型。

[out] pmt

接收媒體類型的 AM_MEDIA_TYPE 結構的指標。 這個參數可以透過 NULL,在此情況下,方法不會傳回媒體類型。

傳回值

傳回 HRESULT 值。 可能的值如下:

傳回碼 描述
S_OK
成功。
E_FAIL
未開啟檔案。
E_OUTOFMEMORY
記憶體不足。
E_POINTER
ppszFileName 中的 NULL 指標自變數。

備註

如果篩選尚未開啟檔案,方法可能會成功,但在 ppszFileName 參數中傳回 NULL。 檢查方法傳回時的值。

方法會為 ppszFileName 中傳回的字串配置記憶體,如果有任何) ,則為媒體類型中格式區塊的記憶體 (。 呼叫端必須藉由呼叫 CoTaskMemFree 來釋放它們。 針對媒體類型,您可以在基類連結庫中使用 FreeMediaType 函式。

規格需求

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

另請參閱

錯誤和成功碼

IFileSourceFilter 介面