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.
A version of this page is also available for
4/8/2010

This function sends a data block to the specified waveform output device.

Syntax

MMRESULT waveOutWrite(
  HWAVEOUT
 hwo, 
  LPWAVEHDR 
pwh, 
  UINT 
cbwh 
); 

Parameters

hwo

Handle to the waveform-audio output device.

pwh

Pointer to a WAVEHDRstructure containing information about the data block.

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_UNPREPARED

Data block pointed to by the pwhparameter has not been prepared.

WAVERR_BADFORMAT

Unsupported wave format.

WAVERR_STILLPLAYING

The waveform output device is still playing some other data.

WAVERR_UNPREPARED

The wave header is not prepared.

WAVERR_SYNC

The waveform output device is synchronous.

Remarks

When the buffer is finished, the WHDR_DONE bit is set in the dwFlagsmember of the WAVEHDRstructure.

The buffer must be prepared with the waveOutPrepareHeaderfunction before it is passed to waveOutWrite. Unless the device is paused by calling the waveOutPausefunction, playback begins when the first data block is sent to the device.

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

See Also