The DirectSoundCreate function creates and initializes an IDirectSound interface.
HRESULT DirectSoundCreate(
LPGUID lpGuid,
LPDIRECTSOUND * ppDS,
IUnknown FAR * pUnkOuter
);
If the function succeeds, the return value is DS_OK.
If the function fails, the return value may be one of the following error values:
DSERR_ALLOCATED
DSERR_INVALIDPARAM
DSERR_NOAGGREGATION
DSERR_NODRIVER
DSERR_OUTOFMEMORY
The application must call the IDirectSound::SetCooperativeLevel method immediately after creating a DirectSound object.
IDirectSound::GetCaps, IDirectSound::SetCooperativeLevel