共用方式為


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;否則為所處理之屬性的特定錯誤。

備註

KsPinDataIntersectionExKsPinDataIntersection 非常類似,但下列有些微差異除外:

  • KsPinDataIntersectionEx 中,會傳遞描述元的大小,這是允許擴充描述項的功能。
  • 數據交集回呼函式在延伸版本 (NTSTATUS 回呼 (ContextIrp、Pin、DataRange、MatchingDataRangeDataBufferSize、DataSizeData、DataSize) ) 與 KsPinDataIntersection (NTSTATUS 回呼 (IrpPinDataRangeData) ) 。
  • 輸出緩衝區 (Data) 長度會當做參數傳遞至數據交集回呼函式, (DataBufferSize) ,而不是從目前的 I/O 堆棧位置擷取。
  • 數據交集回呼函式會傳遞 Context 參數, (傳遞至 KsPinDataIntersectionEx) 的相同 Context 參數。
  • 結果格式的大小會以 DataSize 傳回,而不是 Irp->IoStatus.Information。
這些差異除外, KsPinDataIntersectionKsPinDataIntersectionEx 的運作方式類似。

規格需求

需求
目標平台 桌面
標頭 ks.h (包含 Ks.h)

另請參閱

KStrIntersectHandlerEx