This message requests an ACM driver to return hardware capabilities for a waveform output device.
MMSYSERR_NOERROR indicates success. Otherwise, the driver returns one of the MMSYSERR error values declared in the Mmsystem.h header file or one of the ACMERR error values declared in the Msacm.h header file. If the driver does not support waveform hardware, it returns MMSYSERR_NOTSUPPORTED.
The ACM (Waveapi.dll) sends this message by calling the ACM driver’s ACM_IOControl entry point through the DeviceIoControl function. This call is made each time a client calls the acmMetrics function with the index parameter of ACM_METRIC_HARDWARE_WAVE_OUTPUT.
The driver receives the address of WAVEOUTCAPS and fills in the structure.
Only ACM drivers that provide access to waveform output hardware need to support this message. If your driver supports this message, it must return ACMDRIVERDETAILS_SUPPORTF_HARDWARE in the ACMDRIVERDETAILS structure provided with the ACMDM_DRIVER_DETAILS message. For more information about providing ACM support, see the Windows NT DDK.