IOCTL_INTERNAL_MOUSE_CONNECT IOCTL (kbdmou.h)
La demande IOCTL_INTERNAL_MOUSE_CONNECT connecte le service Mouclass à un appareil de souris. Mouclass envoie cette requête vers le bas de la pile de l’appareil avant d’ouvrir un appareil à souris.
Une fois que Moufiltr a reçu la demande de connexion à la souris, il filtre la requête de la manière suivante :
- Enregistre une copie de la structure CONNECT_DATA (Mouclass) qui a été passée à Moufiltr
- Remplace ses propres informations de connexion par les informations de connexion du pilote de classe
- Envoie la requête IOCTL_INTERNAL_MOUSE_CONNECT vers le bas de la pile d’appareils
Moufiltr fournit un modèle pour une routine de rappel de service de filtre qui peut compléter l’opération de MouseClassServiceCallback, la routine de rappel du service Mouclass. Le rappel du service de filtre peut filtrer les données d’entrée transférées de la mémoire tampon d’entrée du périphérique vers la file d’attente de données du pilote de classe.
Pour plus d’informations sur la connexion du service Mouclass, consultez les rubriques suivantes :
Code principal
IRP_MJ_INTERNAL_DEVICE_CONTROL
Mémoire tampon d'entrée
Le membre Parameters.DeviceIoControl.Type3InputBuffer pointe vers une structure CONNECT_DATA qui est allouée et définie par Mouclass.
Longueur de la mémoire tampon d’entrée
Le membre Parameters.DeviceIoControl.InputBufferLength est défini sur une valeur supérieure ou égale à la taille, en octets, d’une structure CONNECT_DATA.
Mémoire tampon de sortie
Le membre Parameters.DeviceIoControl.Type3InputBuffer pointe vers une structure CONNECT_DATA définie par Moufiltr.
Longueur de la mémoire tampon de sortie
Taille d’une structure CONNECT_DATA.
Bloc d’état
Le membre Information est défini sur zéro.
Le membre Status est défini sur l’une des valeurs suivantes :
STATUS_INVALID_PARAMETER
Parameters.DeviceIoControl.InputBufferLength est inférieur à la taille, en octets, d’une structure CONNECT_DATA.
STATUS_SHARING_VIOLATION
Moufiltr est déjà connecté (un pilote de filtre ne prend en charge qu’une seule demande de connexion).
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | kbdmou.h (inclure Kbdmou.h) |