Condividi tramite


struttura KSMETHOD_ITEM (ks.h)

La struttura KSMETHOD_ITEM descrive un singolo metodo all'interno di un set di metodi.

Sintassi

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

Membri

MethodId

Specifica l'identificatore di questo metodo all'interno del relativo set di metodi.

MethodHandler

Puntatore a un minidriver fornito KStrMethodHandler routine di callback.

MethodSupported

Specifica se questo metodo è supportato o meno.

MinMethod

Specifica la dimensione minima del buffer necessaria per specificare completamente il metodo . Questa dimensione è almeno byte di(KSMETHOD).

MinData

Specifica il buffer delle dimensioni minime necessario per specificare il buffer dei dati del metodo. Questo buffer viene usato per leggere e/o scrivere informazioni correlate al metodo .

SupportHandler

Puntatore a un minidriver fornito KStrSupportHandler routine di callback.

Flags

Specifica il tipo di richiesta di questo metodo.

Valore Tipo di richiesta di metodo
KSMETHOD_TYPE_NONE Indica che non è previsto l'utilizzo del buffer dati del gestore. Per i metodi memorizzati nel buffer, anche se lo spazio viene allocato, nessun dato viene copiato nel buffer di sistema o dal buffer di sistema. Quando si usa la modalità di origine (KSMETHOD_TYPE_SOURCE), non viene creato alcun file MDL.
KSMETHOD_TYPE_READ Indica che i parametri devono essere letti dal buffer dati del gestore. Quando memorizzati nel buffer, i dati vengono copiati nel buffer di sistema. Quando si usa la modalità di origine, i dati vengono sondati e bloccati per IoReadAccess.
KSMETHOD_TYPE_WRITE Indica che i parametri devono essere scritti nel buffer Data del gestore. Quando memorizzati nel buffer, i dati vengono copiati dal buffer di sistema. Quando si usa la modalità di origine, i dati vengono probe e bloccati per IoWriteAccess.
KSMETHOD_TYPE_MODIFY Indica che i parametri devono essere letti e scritti nel buffer data del gestore. I dati passati vengono sovrascritti dai dati restituiti. Ciò potrebbe implicare che una struttura passata potrebbe essere semplicemente aggiornata. Quando vengono memorizzati nel buffer, i dati vengono copiati nel buffer di sistema e copiati al termine dell'IRP. Quando si usa la modalità di origine, i dati vengono probe e bloccati per IoModifyAccess.
KSMETHOD_TYPE_SOURCE Indica che il metodo deve essere elaborato in modalità di origine. Viene allocato un MDL e i dati vengono distribuiti e bloccati. Per indicare un metodo memorizzato nel buffer oppure questo flag con altri flag di questo elenco.

Osservazioni

Un minidriver usa la struttura KSMETHOD_ITEM per definire i metodi in un set di metodi. Il minidriver implementa i metodi e usa il membro MethodHandler per puntare a questi metodi. Un client può quindi usare la richiesta di IOCTL_KS_METHOD insieme alla struttura KSMETHOD per eseguire metodi su un oggetto di streaming del kernel gestito dal minidriver. Per altre informazioni, vedere metodi KS.

Fabbisogno

Requisito Valore
intestazione ks.h (include Ks.h)

Vedere anche

KSFASTMETHOD_ITEM

KSMETHOD

KStrSupportHandler