waveInUnprepareHeader (Windows CE 5.0)

Send Feedback

This function cleans up the preparation performed by waveInPrepareHeader. The function must be called after the device driver fills a data buffer and returns it to the application. You must call this function before freeing the data buffer.

MMRESULT waveInUnprepareHeader(HWAVEINhwi,LPWAVEHDRpwh,UINTcbwh );


  • hwi
    Handle to the waveform-audio input device.
  • pwh
    Pointer to a WAVEHDR structure identifying the buffer to be cleaned up.
  • cbwh
    Size, in bytes, of the WAVEHDR structure.

Return Values

One of the values described in the following table is returned.

Value Description
MMSYSERR_INVALHANDLE Specified device handle is invalid.
MMSYSERR_NODRIVER No device driver is present.
MMSYSERR_NOMEM Unable to allocate or lock memory.
WAVERR_STILLPLAYING Buffer pointed to by the pwh parameter is still in the queue.


This function complements the waveInPrepareHeader function.

You must call this function before freeing the buffer. After passing a buffer to the device driver with the waveInAddBuffer function, you must wait until the driver is finished with the buffer before calling waveInUnprepareHeader. Unpreparing a buffer that has not been prepared has no effect, and the function returns zero.


OS Versions: Windows CE 2.0 and later.
Header: Mmsystem.h.
Link Library: Coredll.lib.

See Also

Waveform Audio Functions

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.