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