Freigeben über


KSMETHOD_ITEM Struktur (ks.h)

Die KSMETHOD_ITEM Struktur beschreibt eine einzelne Methode innerhalb eines Methodensatzes.

Syntax

typedef struct {
  ULONG        MethodId;
  union {
    PFNKSHANDLER MethodHandler;
    BOOLEAN      MethodSupported;
  };
  ULONG        MinMethod;
  ULONG        MinData;
  PFNKSHANDLER SupportHandler;
  ULONG        Flags;
} KSMETHOD_ITEM, *PKSMETHOD_ITEM;

Angehörige

MethodId

Gibt den Bezeichner dieser Methode innerhalb des Methodensatzes an.

MethodHandler

Zeiger auf eine vom Minidriver bereitgestellte KStrMethodHandler Rückrufroutine.

MethodSupported

Gibt an, ob diese Methode unterstützt wird.

MinMethod

Gibt die mindeste Größe des Puffers an, der erforderlich ist, um die Methode vollständig anzugeben. Diese Größe beträgt mindestens Größe von(KSMETHOD)-Bytes.

MinData

Gibt den minimalen Größenpuffer an, der zum Angeben des Methodendatenpuffers erforderlich ist. Dieser Puffer wird verwendet, um Informationen im Zusammenhang mit der Methode zu lesen und/oder zu schreiben.

SupportHandler

Zeiger auf eine vom Minidriver bereitgestellte KStrSupportHandler Rückrufroutine.

Flags

Gibt den Anforderungstyp dieser Methodenanforderung an.

Wert Typ der Methodenanforderung
KSMETHOD_TYPE_NONE Gibt an, dass der Data Puffer des Handlers nicht verwendet werden soll. Bei gepufferten Methoden, obwohl Speicherplatz zugewiesen wird, werden keine Daten in oder aus dem Systempuffer kopiert. Im Quellmodus (KSMETHOD_TYPE_SOURCE) wird keine MDL erstellt.
KSMETHOD_TYPE_READ Gibt an, dass Parameter aus dem Data Puffer des Handlers gelesen werden sollen. Beim Puffern werden Die Daten in den Systempuffer kopiert. Im Quellmodus werden die Daten für IoReadAccess-untersucht und gesperrt.
KSMETHOD_TYPE_WRITE Gibt an, dass Parameter voraussichtlich in den Data Puffer des Handlers geschrieben werden. Beim Puffern werden Daten aus dem Systempuffer kopiert. Im Quellmodus werden die Daten für IoWriteAccess-ausgesondet und gesperrt.
KSMETHOD_TYPE_MODIFY Gibt an, dass Parameter in den Data Puffer des Handlers gelesen und geschrieben werden sollen. Die übergebenen Daten werden von den zurückgegebenen Daten überschrieben. Dies kann bedeuten, dass eine übergebene Struktur nur aktualisiert werden könnte. Beim Puffern werden die Daten in den Systempuffer kopiert und nach Abschluss des IRP wieder kopiert. Im Quellmodus werden die Daten für IoModifyAccessausgesondet und gesperrt.
KSMETHOD_TYPE_SOURCE Gibt an, dass die Methode im Quellmodus verarbeitet werden soll. Eine MDL wird zugewiesen, und die Daten werden abgesondet und gesperrt. Um eine gepufferte Methode anzugeben, ODER dieses Flag mit anderen Flags aus dieser Liste.

Bemerkungen

Ein Minidriver verwendet die KSMETHOD_ITEM Struktur, um Methoden in einem Methodensatz zu definieren. Der Minidriver implementiert Methoden und verwendet den MethodHandler Member, um auf diese Methoden zu verweisen. Ein Client kann dann die IOCTL_KS_METHOD Anforderung zusammen mit der KSMETHOD-Struktur verwenden, um Methoden für ein Kernelstreamingobjekt auszuführen, das der Minidriver behandelt. Weitere Informationen finden Sie unter KS-Methoden.

Anforderungen

Anforderung Wert
Header- ks.h (enthalten Ks.h)

Siehe auch

KSFASTMETHOD_ITEM

KSMETHOD-

KStrSupportHandler-