The waveOutUnprepareHeader function cleans up the preparation performed by the waveOutPrepareHeader function. This function must be called after the device driver is finished with a data block. You must call this function before freeing the buffer.
MMRESULT waveOutUnprepareHeader( HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh );
Handle to the waveform-audio output device.
Pointer to a WAVEHDR structure identifying the data block to be cleaned up.
Size, in bytes, of the WAVEHDR structure.
Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following.
||Specified device handle is invalid.|
||No device driver is present.|
||Unable to allocate or lock memory.|
||The data block pointed to by the pwh parameter is still in the queue.|
This function complements waveOutPrepareHeader. You must call this function before freeing the buffer. After passing a buffer to the device driver with the waveOutWrite function, 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.
|Minimum supported client||Windows 2000 Professional [desktop apps only]|
|Minimum supported server||Windows 2000 Server [desktop apps only]|
|Header||mmeapi.h (include Windows.h)|