KsPinDataIntersectionEx 函式 (ks.h)
KsPinDataIntersectionEx 函式會透過回呼函式處理KSPROPERTY_PIN_DATAINTERSECTION。
語法
KSDDKAPI NTSTATUS KsPinDataIntersectionEx(
[in] PIRP Irp,
[in] PKSP_PIN Pin,
[out] PVOID Data,
[in] ULONG DescriptorsCount,
[in] const KSPIN_DESCRIPTOR *Descriptor,
[in] ULONG DescriptorSize,
[in, optional] PFNKSINTERSECTHANDLEREX IntersectHandler,
[in, optional] PVOID HandlerContext
);
參數
[in] Irp
指定描述屬性要求的 IRP。
[in] Pin
指定要查詢的特定屬性。
[out] Data
指定 pin 屬性特定數據。
[in] DescriptorsCount
指定描述項結構的數目。
[in] Descriptor
指定針腳信息結構的指標。
[in] DescriptorSize
描述項結構的大小,以位元組為單位。
[in, optional] IntersectHandler
包含選擇性的 minidriver 定義 KStrIntersectHandlerEx 回呼函式來比較數據範圍。
[in, optional] HandlerContext
提供給處理程式的選擇性內容。
傳回值
傳回STATUS_SUCCESS;否則為所處理之屬性的特定錯誤。
備註
KsPinDataIntersectionEx 與 KsPinDataIntersection 非常類似,但下列有些微差異除外:
- 在 KsPinDataIntersectionEx 中,會傳遞描述元的大小,這是允許擴充描述項的功能。
- 數據交集回呼函式在延伸版本 (NTSTATUS 回呼 (Context、Irp、Pin、DataRange、MatchingDataRange、DataBufferSize、DataSize、Data、DataSize) ) 與 KsPinDataIntersection (NTSTATUS 回呼 (Irp、Pin、DataRange、Data) ) 。
- 輸出緩衝區 (Data) 長度會當做參數傳遞至數據交集回呼函式, (DataBufferSize) ,而不是從目前的 I/O 堆棧位置擷取。
- 數據交集回呼函式會傳遞 Context 參數, (傳遞至 KsPinDataIntersectionEx) 的相同 Context 參數。
- 結果格式的大小會以 DataSize 傳回,而不是 Irp->IoStatus.Information。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | ks.h (包含 Ks.h) |