◄Contents► ◄Index► ◄Back► ──────────────────────────────────────────────────────────────────────────── WODM_WRITE This message is sent to a waveform output device driver to write a waveform data block to the device. Parameters DWORD dwParam1 Specifies a far pointer to a WAVEHDR structure identifying the data block. DWORD dwParam2 Specifies the size of the WAVEHDR structure. Return value The return value is an error code, or zero (MMSYSERR_NOERROR) if the operation is successful. Possible error codes are: MMSYSERR_NOTENABLED The driver failed to load or initialize. WAVERR_UNPREPARED The data block has not been prepared. Comments The driver should first check the WHDR_PREPARED bit in the dwFlags field of the WAVEHDR structure. If the bit is not set, the driver should return WAVERR_UNPREPARED. The driver should clear the WHDR_DONE bit and set the WHDR_INQUEUE bit and place the data block in its play queue. Then the driver should return control to the client by returning MMSYSERR_NOERROR. Unless the device has been paused with a WODM_PAUSE message, playback should begin when the first data block is received. Once the data block has been played, the driver should set the WHDR_DONE bit and clear the WHDR_INQUEUE bit before notifying the client by using DriverCallback to send a WOM_DONE message. -♦-