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枚举中定义的非分页池类型之一。 由于可以从 IRQL DISPATCH_LEVEL调用 IDmaChannel 接口中的一些方法,因此 DMA 通道对象不得驻留在分页内存中。
OutDmaChannel 和 OuterUnknown 参数遵循 COM 对象的 引用计数约定。
注意
Microsoft支持多样化的包容性环境。 本文包含有关无偏见通信 Microsoft风格指南 识别为排除项的术语的参考。 本文中的单词或短语用于一致性,因为它当前显示在软件中。 当软件更新为删除语言时,本文将更新为对齐方式。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 过时。 对于所有新的音频驱动程序,请改用 IPortWaveXxx::NewXxxDmaChannel 方法。 PortCls 系统驱动程序在 Microsoft Windows 98/Me 和 Windows 2000 及更高版本的作系统中实现 PcNewDmaChannel 函数。 |
目标平台 | 普遍 |
标头 | portcls.h (包括 Portcls.h) |
库 | Portcls.lib |
IRQL | PASSIVE_LEVEL |