Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
This function cleans up the preparation performed by waveOutPrepareHeader. The function must be called after the device driver is finished with a data block. You must call this function before freeing the data buffer.
Syntax
MMRESULT waveOutUnprepareHeader( HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh ); |
Parameters
- hwo
-
Handle to the waveform-audio output device.
- pwh
-
Pointer to a WAVEHDRstructure identifying the data block to be cleaned up.
- cbwh
-
Size, in bytes, of the WAVEHDRstructure.
Return Value
One of the values described in the following table is returned.
Value | Description |
---|---|
MMSYSERR_NOERROR |
Success. |
MMSYSERR_INVALHANDLE |
Specified device handle is invalid. |
MMSYSERR_NODRIVER |
No device driver is present. |
MMSYSERR_NOMEM |
Unable to allocate or lock memory. |
WAVERR_STILLPLAYING |
Data block pointed to by the pwhparameter is still in the queue. |
Remarks
This function complements waveOutPrepareHeader. You must call this function before freeing the buffer. After passing a buffer to the device driver with the waveOutWritefunction, you must wait until the driver is finished with the buffer before calling waveOutUnprepareHeader.
Unpreparing a buffer that has not been prepared has no effect, and the function returns zero.
Requirements
Header | mmsystem.h |
Library | coredll.lib |
Windows Embedded CE | Windows CE 2.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |