Microsoft DirectX 9.0


Retrieves the status of the current sample's latest asynchronous update. If the update isn't complete, you can force it to complete.


HRESULT CompletionStatus(
  DWORD dwFlags,
  DWORD dwMilliseconds



[in] Value that specifies whether to forcibly complete the update. This value is a combination of one or more of the following flags.

Value Description
COMPSTAT_NOUPDATEOK (0x01) Force the update to complete as soon as possible, even if the sample update isn't yet complete. If the sample is updating and you didn't set the COMPSTAT_WAIT flag, the method returns MS_S_PENDING. If the sample is waiting to be updated, this method removes it from the queue and returns MS_S_NOTUPDATED.
COMPSTAT_WAIT (0x02) Wait until the sample finishes updating before returning from this method.
COMPSTAT_ABORT (0x04) Forces the update to complete, even if it's currently updating. This leaves the sample data in an undefined state. Combine this value with the COMPSTAT_WAITFORCOMPLETION flag to ensure that the update canceled.


[in] If the dwFlags parameter is COMPSTAT_WAIT, this value is the number of milliseconds to wait for the update to complete. Specify INFINITE to indicate that you want to wait until the sample updates before this call returns.

Return Values

Returns one of the following values.

Return code Description
E_ABORT The update aborted.
MS_S_ENDOFSTREAM The sample wasn't updated because it reached the end of the stream.
MS_S_NOUPDATE The update was forcibly completed; the sample was not updated by the stream.
MS_S_PENDING An asynchronous update is pending.
S_OK Success.

See Also