waveOutUnprepareHeader (Compact 2013)

3/26/2014

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 WAVEHDR structure identifying the data block to be cleaned up.
  • cbwh
    Size, in bytes, of the WAVEHDR structure.

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 pwh parameter 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 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.

Requirements

Header

mmsystem.h

Library

coredll.lib

See Also

Reference

Waveform Audio Functions