Error Codes
Errors are represented by negative values and cannot be combined. This table lists the values that can be returned by all DirectSound and DirectSoundBuffer methods. For a list of the error codes each method can return, see the individual method descriptions. 
- DS_OK 
- The request completed successfully. 
- DSERR_ALLOCATED 
- The request failed because resources, such as a priority level, were already in use by another caller. 
- DSERR_ALREADYINITIALIZED 
- The object is already initialized. 
- DSERR_BADFORMAT 
- The specified wave format is not supported. 
- DSERR_BUFFERLOST 
- The buffer memory has been lost and must be restored. 
- DSERR_CONTROLUNAVAIL 
- The control (volume, pan, and so forth) requested by the caller is not available. 
- DSERR_GENERIC 
- An undetermined error occurred inside the DirectSound subsystem. 
- DSERR_INVALIDCALL 
- This function is not valid for the current state of this object. 
- DSERR_INVALIDPARAM 
- An invalid parameter was passed to the returning function. 
- DSERR_NOAGGREGATION 
- The object does not support aggregation. 
- DSERR_NODRIVER 
- No sound driver is available for use. 
- DSERR_NOINTERFACE 
- The requested COM interface is not available. 
- DSERR_OTHERAPPHASPRIO 
- Another application has a higher priority level, preventing this call from succeeding. 
- DSERR_OUTOFMEMORY 
- The DirectSound subsystem could not allocate sufficient memory to complete the caller's request. 
- DSERR_PRIOLEVELNEEDED 
- The caller does not have the priority level required for the function to succeed. 
- DSERR_UNINITIALIZED 
- The DirectSound device has not been initialized.
- DSERR_UNSUPPORTED 
- The function called is not supported at this time.