Freigeben über


KsPinDataIntersection-Funktion (ks.h)

Die KsPinDataIntersection--Funktion verarbeitet die KSPROPERTY_PIN_DATAINTERSECTION Eigenschaft über eine Rückruffunktion und führt einen Großteil der anfänglichen Überprüfung der übergebenen Parameter durch. KsPinDataIntersection ruft die minidriverdefinierte KStrIntersectHandler Rückruffunktion mit jedem potenziellen Datenbereich auf, nachdem sie mit der Liste der Datenbereiche übereinstimmen, die dieser Pinfactory zugewiesen sind.

Syntax

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
);

Parameter

[in] Irp

Gibt das IRP an, das die Eigenschaftsanforderung beschreibt.

[in] Pin

Gibt die spezifische Eigenschaft an, die abgefragt wird.

[out, optional] Data

Gibt die pin-eigenschaftsspezifischen Daten an.

[in] DescriptorsCount

Gibt die Anzahl der Deskriptorstrukturen an.

[in] Descriptor

Gibt den Zeiger auf die Liste der Pininformationsstrukturen an.

[in] IntersectHandler

Gibt die minidriverdefinierte KStrIntersectHandler Rückruffunktion an, um einen Datenbereich zu vergleichen.

Rückgabewert

Die KsPinDataIntersection-Funktion gibt STATUS_SUCCESS zurück, wenn ein übereinstimmender Bereich gefunden wird, STATUS_NO_MATCH, wenn kein übereinstimmender Bereich gefunden wurde, oder einen Fehler, der für die behandelte Eigenschaft spezifisch ist. Der minidriverdefinierte KStrIntersectHandler Schnittpunkthandler, der für KsPinDataIntersection bereitgestellt wird, wird mit jedem vom Aufrufer bereitgestellten Datenbereich aufgerufen, bis eine Übereinstimmung gefunden wird oder ein Fehler auftritt.

Beachten Sie, dass die minidriverdefinierte KStrIntersectHandler Rückruffunktion über einen eigenen Satz von Rückgabewerten verfügt.

Bemerkungen

Eine Übereinstimmung kann unter drei Bedingungen auftreten: Wenn das Hauptformat des übergebenen Bereichs ein Wildcard ist oder einem Pin-Factory-Bereich entspricht, wenn das Unterformat ein Wildcard oder Übereinstimmungen ist und der Bezeichner ein Wildcard oder Übereinstimmung ist. Da die Größe des Datenbereichs variabel sein kann, wird sie nicht überprüft, um zu überprüfen, ob es sich mindestens um die Größe einer KSDATARANGE- Struktur handelt.

Anforderungen

Anforderung Wert
Zielplattform- Universal
Header- ks.h (enthalten Ks.h)
Library Ks.lib

Siehe auch

KSDATARANGE-

KStrIntersectHandler-