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 |