The acmDriverEnum function enumerates the available ACM drivers, continuing until there are no more drivers or the callback function returns FALSE.

MMRESULT acmDriverEnum(
  DWORD_PTR       dwInstance,  
  DWORD           fdwEnum      



Procedure instance address of the application-defined callback function.


A 64-bit (DWORD_PTR) or 32-bit (DWORD) application-defined value that is passed to the callback function along with ACM driver information.


Flags for enumerating ACM drivers. The following values are defined.

Value Meaning
ACM_DRIVERENUMF_DISABLED Disabled ACM drivers should be included in the enumeration. Drivers can be disabled by the user through the Control Panel or by an application using the acmDriverPriority function. If a driver is disabled, the fdwSupport parameter to the callback function will have the ACMDRIVERDETAILS_SUPPORTF_DISABLED flag set.
ACM_DRIVERENUMF_NOLOCAL Only global drivers should be included in the enumeration.

Return Values

Returns zero if successful or an error otherwise. Possible error values include the following.

Value Description
MMSYSERR_INVALFLAG At least one flag is invalid.
MMSYSERR_INVALPARAM At least one parameter is invalid.


The acmDriverEnum function will return MMSYSERR_NOERROR (zero) if no ACM drivers are installed. Moreover, the callback function will not be called.


  Windows NT/2000/XP: Included in Windows NT 3.1 and later.
  Windows 95/98/Me: Included in Windows 95 and later.
  Header: Declared in Msacm.h.
  Library: Use Msacm32.lib.

See Also

Audio Compression Manager, Audio Compression Functions, acmDriverPriority