IOCTL_INTERNAL_MOUSE_CONNECT IOCTL (kbdmou.h)
La richiesta di IOCTL_INTERNAL_MOUSE_CONNECT connette il servizio Mouclass a un dispositivo mouse. Mouclass invia questa richiesta nello stack di dispositivi prima di aprire un dispositivo mouse.
Dopo che Moufiltr riceve la richiesta di connessione del mouse, filtra la richiesta nel modo seguente:
- Salva una copia della struttura CONNECT_DATA (Mouclass) passata a Moufiltr
- Sostituisce le proprie informazioni di connessione per le informazioni di connessione del driver di classe
- Invia la richiesta di IOCTL_INTERNAL_MOUSE_CONNECT nello stack di dispositivi
Moufiltr fornisce un modello per una routine di callback del servizio di filtro che può integrare l'operazione di MouseClassServiceCallback, la routine di callback del servizio Mouclass. Il callback del servizio di filtro può filtrare i dati di input trasferiti dal buffer di input del dispositivo alla coda dei dati del driver di classe.
Per altre informazioni sulla connessione del servizio Mouclass, vedere gli argomenti seguenti:
Codice principale
IRP_MJ_INTERNAL_DEVICE_CONTROL
Buffer di input
Il membro Parameters.DeviceIoControl.Type3InputBuffer punta a una struttura CONNECT_DATA allocata e impostata da Mouclass.
Lunghezza del buffer di input
Il membro Parameters.DeviceIoControl.InputBufferLength è impostato su un valore maggiore o uguale alla dimensione, espressa in byte, di una struttura di CONNECT_DATA.
Buffer di output
Il membro Parameters.DeviceIoControl.Type3InputBuffer punta a una struttura CONNECT_DATA impostata da Moufiltr.
Lunghezza del buffer di output
Dimensioni di una struttura CONNECT_DATA.
Blocco dello stato
Il membro Informazioni è impostato su zero.
Il membro Status è impostato su uno dei valori seguenti:
STATUS_INVALID_PARAMETER
Parameters.DeviceIoControl.InputBufferLength è minore delle dimensioni, in byte, di una struttura CONNECT_DATA.
STATUS_SHARING_VIOLATION
Moufiltr è già connesso (un driver di filtro supporta una sola richiesta di connessione).
Requisiti
Requisito | Valore |
---|---|
Intestazione | kbdmou.h (include Kbdmou.h) |