pcAddStreamResource 函数 (portcls.h)
PcAddStreamResource 添加流资源。 支持两种类型的流资源:中断和驱动程序拥有的线程。 PcAddStreamResource 可由具有与音频流关联的中断/线程的任何非音频 WaveRT 微型端口驱动程序调用。 音频 WaveRT 微型端口驱动程序也可以调用它。
语法
PORTCLASSAPI NTSTATUS PcAddStreamResource(
[in] PDEVICE_OBJECT PhysicalDeviceObject,
[in] PVOID ResourceSet,
[in] PPCSTREAMRESOURCE_DESCRIPTOR ResourceDescriptor,
[out] PCSTREAMRESOURCE *ResourceHandle
);
参数
[in] PhysicalDeviceObject
PDEVICE_OBJECT - 使用此资源的设备堆栈的 PDO。
[in] ResourceSet
PVOID - 保留供将来使用,设置为 NULL。 目前仅支持设备范围内的资源。
[in] ResourceDescriptor
PPCSTREAMRESOURCE_DESCRIPTOR - 要添加的资源。 有关详细信息,请参阅 PCSTREAMRESOURCE_DESCRIPTOR。
[out] ResourceHandle
PCSTREAMRESOURCE* - 将保存资源句柄的位置。 有关详细信息,请参阅 PcRemoveStreamResource。
返回值
STATUS_SUCCESS – 驱动程序能够注册指定 PDO 的资源。
STATUS_INVALID_PARAMETER – 除其他错误状态实例的特定情况外,如果驱动程序发现任何其他参数无效,则返回此错误。
可能会返回其他标准状态代码。
注解
为了帮助确保无故障运行,音频驱动程序必须使用 portcls 注册其流式资源。 这允许 OS 管理资源,以避免音频流和其他子系统之间的干扰。
Stream资源是音频驱动程序用于处理音频流或确保音频数据流的任何资源。
所有音频驱动程序都必须向音频类驱动程序注册其流资源。 驱动程序注册以下资源类型:中断、驱动程序拥有的线程和其他音频堆栈资源上的依赖项 (示例:并行音频驱动程序堆栈) 。 有关详细信息,请参阅 PCSTREAMRESOURCE_DESCRIPTOR 的定义。
进行此调用时,音频驱动程序必须确保资源有效。
仅在 Windows 10 中运行的音频驱动程序可以使用 PcAddStreamResource 和 PcRemoveStreamResource。 对于需要在早期版本的 Windows 下运行的 Audio waveRT 微型端口驱动程序,请使用 AddStreamResource 和 RemoveStreamResource。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10 |
最低受支持的服务器 | Windows Server 2016 |
目标平台 | Windows |
标头 | portcls.h |
Library | Portcls.lib |
DLL | NA |
IRQL | PASSIVE_LEVEL |