Skip to main content
IMFAsyncResult interface

Provides information about the result of an asynchronous operation.


The IMFAsyncResult interface inherits from the IUnknown interface. IMFAsyncResult also has these types of members:


The IMFAsyncResult interface has these methods.


Returns an object associated with the asynchronous operation.


Returns the state object specified by the caller in the asynchronous Begin method.


Returns the state object specified by the caller in the asynchronous Begin method, without incrementing the object's reference count.


Returns the status of the asynchronous operation.


Sets the status of the asynchronous operation.



Use this interface to complete an asynchronous operation. You get a pointer to this interface when your callback object's IMFAsyncCallback::Invoke method is called. To complete the operation, pass the IMFAsyncResult pointer to the End... method that corresponds to the Begin... method that starts the operation. For example, if the asynchronous method is named BeginRead, call the EndRead method. For more information, see Calling Asynchronous Methods.

If you are implementing an asynchronous method, call MFCreateAsyncResult to create an instance of this object. For more information, see Writing an Asynchronous Method.

Any custom implementation of this interface must inherit the MFASYNCRESULT structure.

This interface is available on the following platforms if the Windows Media Format 11 SDK redistributable components are installed:

  • Windows XP with Service Pack 2 (SP2) and later.
  • Windows XP Media Center Edition 2005 with KB900325 (Windows XP Media Center Edition 2005) and KB925766 (October 2006 Update Rollup for Windows XP Media Center Edition) installed.


Minimum supported client

Windows Vista [desktop apps | UWP apps]

Minimum supported server

Windows Server 2008 [desktop apps | UWP apps]


Mfobjects.h (include Mfidl.h)



See also

Media Foundation Interfaces
Asynchronous Callback Methods