MFBeginCreateFile function (mfapi.h)
Begins an asynchronous request to create a byte stream from a file.
Syntax
HRESULT MFBeginCreateFile(
[in] MF_FILE_ACCESSMODE AccessMode,
[in] MF_FILE_OPENMODE OpenMode,
[in] MF_FILE_FLAGS fFlags,
[in] LPCWSTR pwszFilePath,
[in] IMFAsyncCallback *pCallback,
[in] IUnknown *pState,
[out] IUnknown **ppCancelCookie
);
Parameters
[in] AccessMode
The requested access mode, specified as a member of the MF_FILE_ACCESSMODE enumeration.
[in] OpenMode
The behavior of the function if the file already exists or does not exist, specified as a member of the MF_FILE_OPENMODE enumeration.
[in] fFlags
Bitwise OR of values from the MF_FILE_FLAGS enumeration.
[in] pwszFilePath
Pointer to a null-terminated string containing the file name.
[in] pCallback
Pointer to the IMFAsyncCallback interface of a callback object. The caller must implement this interface
[in] pState
Pointer to the IUnknown interface of a state object, defined by the caller. This parameter can be NULL. You can use this object to hold state information. The object is returned to the caller when the callback is invoked.
[out] ppCancelCookie
Receives an IUnknown pointer or the value NULL. If the value is not NULL, you can cancel the asynchronous operation by passing this pointer to the MFCancelCreateFile function. The caller must release the interface. This parameter is optional and can be NULL.
Return value
The function returns an HRESULT. Possible values include, but are not limited to, those in the following table.
Return code | Description |
---|---|
|
The function succeeded. |
Remarks
When the request is completed, the callback object's IMFAsyncCallback::Invoke method is called. The callback object should then call the MFEndCreateFile function to get a pointer to the byte stream.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista [desktop apps only] |
Minimum supported server | Windows Server 2008 [desktop apps only] |
Target Platform | Windows |
Header | mfapi.h |
Library | Mfplat.lib |
DLL | Mfplat.dll |