PCMETHOD_ITEM-Struktur (portcls.h)
Die PCMETHOD_ITEM-Struktur beschreibt eine Methode, die von einem Filter, Pin oder Knoten unterstützt wird.
Syntax
typedef struct {
const GUID *Set;
ULONG Id;
ULONG Flags;
PCPFNMETHOD_HANDLER Handler;
} PCMETHOD_ITEM, *PPCMETHOD_ITEM;
Member
Set
Gibt den Methodensatz an. Dieses Element ist ein Zeiger auf eine GUID, die den Methodensatz eindeutig identifiziert.
Id
Gibt die Methoden-ID an. Dieses Element identifiziert ein Methodenelement im Methodensatz. Wenn der Methodensatz n Elemente enthält, sind gültige Methoden-IDs ganze Zahlen im Bereich von 0 bis n-1.
Flags
Gibt den Typ der Parameterübergabe und des Arbeitsspeicherzugriffs an, den eine Methode verwendet. Dieses Element kann auf das bitweise ODER eines oder mehrerer Flagbits in der folgenden Tabelle festgelegt werden.
Flagbit | Bedeutung |
---|---|
PCMETHOD_ITEM_FLAG_MODIFY | Die -Methode liest aus und schreibt in den Parameterpuffer. |
PCMETHOD_ITEM_FLAG_NONE | Die -Methode verwendet nicht den Parameterpuffer. |
PCMETHOD_ITEM_FLAG_READ | Die -Methode liest aus dem Parameterpuffer. |
PCMETHOD_ITEM_FLAG_SOURCE | Die Methode prüft und sperrt Speicherseiten, bevor sie den Speicherzugriff versucht. |
PCMETHOD_ITEM_FLAG_WRITE | Die -Methode schreibt in den Parameterpuffer. |
Handler
Zeiger auf die Methodenhandlerroutine. Dieses Element ist ein Funktionszeiger vom Typ PCPFNMETHOD_HANDLER, der wie folgt definiert ist:
typedef NTSTATUS (*PCPFNMETHOD_HANDLER)
(
IN PPCMETHOD_REQUEST MethodRequest
);
Beim Aufrufen der Handlerroutine übergibt der Aufrufer einen einzelnen Aufrufparameter, bei dem es sich um einen Zeiger auf eine Struktur vom Typ PCMETHOD_REQUEST handelt.
Hinweise
Das WDM-Audiosubsystem unterstützt derzeit keine Methoden für Filterinstanzen oder Anheftinstanzen. Diese Einschränkung schließt auch die Unterstützung von Methoden auf Knoten aus.
Die PCAUTOMATION_TABLE-Struktur enthält einen Zeiger auf ein Array von PCMETHOD_ITEM Strukturen.
Anforderungen
Anforderung | Wert |
---|---|
Header | portcls.h (include Portcls.h) |