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 中运行的音频驱动程序可以使用 PcAddStreamResourcePcRemoveStreamResource。 对于需要在早期版本的 Windows 下运行的 Audio waveRT 微型端口驱动程序,请使用 AddStreamResourceRemoveStreamResource

要求

要求
最低受支持的客户端 Windows 10
最低受支持的服务器 Windows Server 2016
目标平台 Windows
标头 portcls.h
Library Portcls.lib
DLL NA
IRQL PASSIVE_LEVEL

另请参阅

PCSTREAMRESOURCE_DESCRIPTOR

PcRemoveStreamResource