KsPinDataIntersection 函数 (ks.h)

KsPinDataIntersection 函数通过回调函数处理 KSPROPERTY_PIN_DATAINTERSECTION 属性,并执行传递的参数的大部分初始验证。 KsPinDataIntersection 在将微型驱动程序定义的 KStrIntersectHandler 回调函数与分配给该引脚工厂的数据范围列表匹配后,会调用每个潜在数据范围。

语法

KSDDKAPI NTSTATUS KsPinDataIntersection(
  [in]            PIRP                   Irp,
  [in]            PKSP_PIN               Pin,
  [out, optional] PVOID                  Data,
  [in]            ULONG                  DescriptorsCount,
  [in]            const KSPIN_DESCRIPTOR *Descriptor,
  [in]            PFNKSINTERSECTHANDLER  IntersectHandler
);

参数

[in] Irp

指定描述属性请求的 IRP。

[in] Pin

指定要查询的特定属性。

[out, optional] Data

指定特定于引脚属性的数据。

[in] DescriptorsCount

指定描述符结构的数目。

[in] Descriptor

指定指向引脚信息结构列表的指针。

[in] IntersectHandler

指定微型驱动程序定义的 KStrIntersectHandler 回调函数以比较数据范围。

返回值

如果找到匹配范围, KsPinDataIntersection 函数将返回STATUS_SUCCESS;如果未找到匹配范围,则返回STATUS_NO_MATCH,或者返回特定于所处理属性的错误。 向 KsPinDataIntersection 提供的微型驱动程序定义的 KStrIntersectHandler 交集处理程序使用调用方提供的每个数据范围进行调用,直到找到匹配项或发生错误为止。

请注意,微型驱动程序定义的 KStrIntersectHandler 回调函数有自己的一组返回值。

注解

匹配可以在三个条件下发生:如果传递的范围的主要格式为通配符或与固定工厂范围匹配,如果子格式为通配符或匹配,以及说明符为通配符或匹配。 由于数据范围大小可能可变,因此除了检查它是否至少是 KSDATARANGE 结构的大小之外,不会对其进行验证。

要求

要求
目标平台 通用
标头 ks.h (包括 Ks.h)
Library Ks.lib

另请参阅

KSDATARANGE

KStrIntersectHandler