Функция PcNewDmaChannel (portcls.h)
Функция PcNewDmaChannel создает новый объект канала DMA. Эта функция устарела; Дополнительные сведения см. в следующих комментариях.
Синтаксис
PORTCLASSAPI NTSTATUS PcNewDmaChannel(
[out] PDMACHANNEL *OutDmaChannel,
[in, optional] PUNKNOWN OuterUnknown,
[in] POOL_TYPE PoolType,
[in] PDEVICE_DESCRIPTION DeviceDescription,
[in] PDEVICE_OBJECT DeviceObject
);
Параметры
[out] OutDmaChannel
Выходной указатель для объекта DMA-канала, созданного этой функцией. Этот параметр указывает на переменную указателя, выделенную вызывающим объектом, в которую функция выводит ссылку на созданный объект IDmaChannel . Укажите допустимое значение указателя, отличное от NULL , для этого параметра.
[in, optional] OuterUnknown
Указатель на интерфейс IUnknown объекта, который должен агрегировать объект. Если агрегирование не требуется, присвойте этому параметру значение NULL.
[in] PoolType
Указывает тип пула носителей, из которого будет выделен объект. Это значение перечисления POOL_TYPE . Укажите тип непагированного пула для этого параметра.
[in] DeviceDescription
Указатель на описание физического устройства, для которого вызывающий объект запрашивает объект DMA. Этот параметр указывает на структуру типа DEVICE_DESCRIPTION.
[in] DeviceObject
Указатель на объект устройства для физического адаптера. Этот параметр указывает на системную структуру типа DEVICE_OBJECT.
Возвращаемое значение
PcNewDmaChannel возвращает STATUS_SUCCESS, если вызов был выполнен успешно. В противном случае возвращается соответствующий код ошибки.
Комментарии
PcNewDmaChannel устарел. Для всех новых аудиодрайверов используйте один из следующих методов IPortWave Xxx::NewXxxDmaChannel вместо PcNewDmaChannel:
IPortWavePci::NewMasterDmaChannel
IPortWaveCyclic::NewMasterDmaChannel
IPortWaveCyclic::NewSlaveDmaChannel
Для обеспечения обратной совместимости системный драйвер PortCls будет по-прежнему поддерживать PcNewDmaChannel, и существующие драйверы могут продолжать использовать эту функцию.
Укажите параметр PoolType , чтобы он был одним из типов непагрегированных пулов, определенных в перечислении POOL_TYPE. Объект канала DMA не должен находиться в выгружаемой памяти, так как некоторые методы в интерфейсе IDmaChannel можно вызвать из DISPATCH_LEVEL IRQL.
Параметры OutDmaChannel и OuterUnknown следуют соглашениям о подсчете ссылок для COM-объектов.
Примечание
Корпорация Майкрософт поддерживает разнообразную и инклюзивную среду. В этой статье содержатся ссылки на терминологию, которую руководство Майкрософт по общениям без предвзятости распознает как исключающую. Слово или фраза используется в этой статье для обеспечения согласованности, так как они в настоящее время отображаются в программном обеспечении. При обновлении программного обеспечения для удаления языка эта статья будет обновлена, чтобы она была в соответствии.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Является устаревшей. Для всех новых аудиодрайверов используйте метод IPortWaveXxx::NewXxDmaChannel. Системный драйвер PortCls реализует функцию PcNewDmaChannel в Microsoft Windows 98/Me, а также в операционных системах Windows 2000 и более поздних версий. |
Целевая платформа | Универсальное |
Верхняя часть | portcls.h (включая Portcls.h) |
Библиотека | Portcls.lib |
IRQL | PASSIVE_LEVEL |