Поделиться через


функция acmDriverAddW (msacm.h)

Функция acmDriverAdd добавляет драйвер в список доступных драйверов ACM. Тип и расположение драйвера зависят от флагов, используемых для добавления драйверов ACM. После успешного добавления драйвера функция записи драйвера получит сообщения драйвера ACM.

Синтаксис

MMRESULT ACMAPI acmDriverAddW(
  LPHACMDRIVERID phadid,
  HINSTANCE      hinstModule,
  LPARAM         lParam,
  DWORD          dwPriority,
  DWORD          fdwAdd
);

Параметры

phadid

Указатель на буфер, который получает дескриптор, определяющий установленный драйвер. Этот дескриптор используется для идентификации драйвера в вызовах других функций ACM.

hinstModule

Дескриптор экземпляра модуля, исполняемая или библиотека динамической компоновки (DLL) содержит функцию записи драйвера.

lParam

Адрес функции драйвера или дескриптор окна уведомлений в зависимости от флагов fdwAdd.

dwPriority

Сообщение окна для отправки для трансляций уведомлений. Этот параметр используется только с флагом ACM_DRIVERADDF_NOTIFYHWND. Все остальные флаги требуют, чтобы этот элемент был задан равным нулю.

fdwAdd

Флаги для добавления драйверов ACM. Определены следующие значения.

Ценность Значение
ACM_DRIVERADDF_FUNCTION Параметр lParam — это адрес функции драйвера, соответствующий прототипу acmDriverProc. Функция может находиться в исполняемом или DLL-файле.
ACM_DRIVERADDF_GLOBAL Предоставляется для совместимости с 16-разрядными приложениями. Для API Win32 драйверы ACM, добавленные функцией acmDriverAdd, могут использоваться только приложением, которое добавило драйвер. Это верно, указано ли ACM_DRIVERADDF_GLOBAL. Дополнительные сведения см. в статье Добавление драйверов вприложения.
ACM_DRIVERADDF_LOCAL ACM автоматически предоставляет локальному драйверу более высокий приоритет, чем глобальный драйвер при поиске драйвера для удовлетворения вызова функции. Дополнительные сведения см. в статье Добавление драйверов вприложения.
ACM_DRIVERADDF_NAME Параметр lParam — это имя значения реестра в HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32. Значение определяет библиотеку DLL, реализующую кодек ACM. Приложения могут использовать этот флаг, если новые записи реестра создаются после того, как приложение уже начало использовать ACM.
ACM_DRIVERADDF_NOTIFYHWND Параметр lParam — это дескриптор окна уведомлений, которое получает сообщения при внесении изменений в глобальные приоритеты и состояния драйвера. Сообщение окна для получения определяется приложением и должно быть передано в dwPriority. Параметры wParam и lParam, передаваемые с сообщением окна, зарезервированы для дальнейшего использования и должны игнорироваться. ACM_DRIVERADDF_GLOBAL нельзя указать в сочетании с этим флагом. Дополнительные сведения о приоритетах драйверов см. в описании функции acmDriverPriority.

Возвращаемое значение

Возвращает ноль в случае успешного выполнения или ошибки в противном случае. Возможные значения ошибок включают следующие значения.

Возвращаемый код Описание
MMSYSERR_INVALFLAG
По крайней мере один флаг недопустим.
MMSYSERR_INVALPARAM
По крайней мере один параметр недопустим.
MMSYSERR_NOMEM
Система не может выделить ресурсы.

Замечания

Заметка

Заголовок msacm.h определяет acmDriverAdd как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка msacm.h
библиотеки Msacm32.lib
DLL Msacm32.dll

См. также

Функции сжатия звука

диспетчер сжатия звука