Funzione KsFastMethodHandler (ks.h)
La funzione KsFastMethodHandler gestisce i metodi rapidi richiesti tramite IOCTL_KS_METHOD. Risponde a tutti gli identificatori di metodo definiti dai set contenuti anche nell'elenco di I/O rapido. Questa funzione può essere chiamata solo in PASSIVE_LEVEL.
Sintassi
KSDDKAPI BOOLEAN KsFastMethodHandler(
[in] PFILE_OBJECT FileObject,
[in] PKSMETHOD Method,
[in] ULONG MethodLength,
[in, out] PVOID Data,
[in] ULONG DataLength,
[out] PIO_STATUS_BLOCK IoStatus,
[in] ULONG MethodSetsCount,
[in] const KSMETHOD_SET *MethodSet
);
Parametri
[in] FileObject
Specifica l'oggetto file in cui è stata effettuata la richiesta.
[in] Method
Specifica il parametro del metodo originale. Questo sarà sempre attiva FILE_LONG_ALIGNMENT, ma potrebbe non essere in FILE_QUAD_ALIGNMENT.
[in] MethodLength
Specifica la lunghezza indicata dal chiamante del parametro del metodo.
[in, out] Data
Specifica il parametro di dati non allineato originale.
[in] DataLength
Specifica la lunghezza indicata dal chiamante del parametro di dati.
[out] IoStatus
Specifica una struttura allineata utilizzata per restituire lo stato di errore e le informazioni.
[in] MethodSetsCount
Indica il numero di strutture del set di metodi passate.
[in] MethodSet
Specifica il puntatore all'elenco di informazioni sul set di metodi.
Valore restituito
La funzione KsFastMethodHandler restituisce TRUE se la richiesta viene gestita o FALSE se la richiesta non viene gestita. Se la richiesta non viene gestita, viene generato un IRP. Se la richiesta è stata gestita, la funzione imposta l'elemento IoStatus-Information> su zero a causa di un errore interno o l'elemento viene impostato da un gestore del metodo. Il gestore del metodo imposta anche il campo IoStatus-Status> quando il metodo viene gestito.
Commenti
Il proprietario di un set di metodi può eseguire il prefiltering o il postfiltering della gestione dei metodi usando le funzioni KsFastMethodHandler e KsMethodHandler . La funzione KsFastMethodHandler viene usata per elaborare le richieste effettuate tramite l'interfaccia di invio di I/O veloce per Device Control. Viene usato solo per elaborare le richieste che possono essere soddisfatte rapidamente. Il parametro Wait della funzione di I/O veloce non viene passato e si presuppone che sia TRUE.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Universale |
Intestazione | ks.h (include Ks.h) |
Libreria | Ks.lib |