Enables interfaces that are usually synchronous to function asynchronously.
The IDataObjectAsyncCapability interface has these methods.
|IDataObjectAsyncCapability::EndOperation||Notifies the data object that the asynchronous data extraction has ended.|
|IDataObjectAsyncCapability::GetAsyncMode||Called by a drop target to determine whether the data object supports asynchronous data extraction.|
|IDataObjectAsyncCapability::InOperation||Called by the drop source to determine whether the target is extracting data asynchronously.|
|IDataObjectAsyncCapability::SetAsyncMode||Called by a drop source to specify whether the data object supports asynchronous data extraction.|
|IDataObjectAsyncCapability::StartOperation||Called by a drop target to indicate that asynchronous data extraction is starting.|
IDataObjectAsyncCapability is an optional interface that is implemented by a data object. It allows the drop target to negotiate with the drop source to extract data from the data object asynchronously.
This interface is primarily exported by the data objects used with drag-and-drop and Clipboard operations. Typically, such operations are synchronous. However, if data rendering will be time-consuming, IDataObjectAsyncCapability can be used to allow data extraction to take place on a background thread. See the Dragging and Dropping Shell Objects Asynchronously section of Handling Shell Data Transfer Scenarios for a detailed discussion of how to use this interface.
Drop sources and targets use this interface when they wish to have a lengthy data extraction process handled by a background thread.
|Minimum supported client||Windows 8 [desktop apps only]|
|Minimum supported server||Windows Server 2012 [desktop apps only]|