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


Функция 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 можно вызывать из IRQL DISPATCH_LEVEL.

Параметры OutDmaChannel и OuterUnknown соответствуют соглашениям подсчета ссылок для объектов COM.

Заметка

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Устаревший. Для всех новых звуковых драйверов используйте вместо него метод IPortWaveXxx::NewXxxDmaChannel. Системный драйвер PortCls реализует функцию PcNewDmaChannel в Microsoft Windows 98/Me и в Windows 2000 и более поздних операционных системах.
целевая платформа Всеобщий
заголовка portcls.h (include Portcls.h)
библиотеки Portcls.lib
IRQL PASSIVE_LEVEL

См. также

DEVICE_DESCRIPTION

DEVICE_OBJECT

IDmaChannel

POOL_TYPE