IFileSinkFilter::GetCurFile method (strmif.h)

[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The GetCurFile method retrieves the name and media type of the current file.

Syntax

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

Parameters

[out] ppszFileName

Address of a pointer that receives the name of the file, as an OLESTR type.

[out] pmt

Pointer to an AM_MEDIA_TYPE structure that receives the media type. This parameter can by NULL, in which case the method does not return the media type.

Return value

Returns an HRESULT value. Possible values include the following.

Return code Description
S_OK
Success.
E_FAIL
No file is opened.
E_OUTOFMEMORY
Insufficient memory.
E_POINTER
NULL pointer argument in ppszFileName.

Remarks

If the filter has not opened a file, the method might succeed but return NULL in the ppszFileName parameter. Check the value when the method returns.

The method allocates the memory for the string returned in ppszFileName, and the memory for the format block in the media type (if any). The caller must free them by calling CoTaskMemFree. For the media type, you can use the FreeMediaType function in the base class library.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header strmif.h (include Dshow.h)
Library Strmiids.lib

See also

Error and Success Codes

IFileSinkFilter Interface