Appareils d’interface humaine (HID)
Vue d’ensemble de la technologie HID (Human Interface Devices).
Pour développer des appareils d’interface humaine (HID), vous avez besoin des en-têtes suivants :
Pour obtenir le guide de programmation, consultez Appareils d’interface humaine (HID).
Pour connaître les API de programmation Win32 HID, consultez Informations de référence sur les appareils d’interface humaine Win32.
Cette section contient les interfaces de programmation liées aux appareils d’interface humaine (ou HID). En règle générale, il s’agit d’appareils que les humains utilisent pour contrôler directement le fonctionnement des systèmes informatiques.
Routines de prise en charge HIDClass
Il existe des routines fournies par le système que les applications en mode utilisateur, les pilotes en mode noyau et les mini-disques HID utilisent pour faire fonctionner des appareils dans la classe d’installation d’appareil HIDClass.
En règle générale, les applications en mode utilisateur peuvent utiliser les routines HidD_Xxx et HidP_Xxx. Toutefois, les pilotes en mode noyau peuvent uniquement appeler HidP_Xxx routines.
Les minidrivers HID utilisent uniquement la routine HidRegisterMinidriver .
Par Windows 8.1 Microsoft a introduit la nouvelle API Windows.Devices.HumanInterfaceDevice qui vous permet d’écrire des applications Windows qui accèdent aux appareils HID.
L’en-tête définit les IOCTL qu’un minidriver HID doit prendre en charge. Seul le pilote de classe HID envoie ces IOCTL à un minidriver HID. Les applications en mode utilisateur et autres pilotes en mode noyau peuvent uniquement communiquer avec les collections HID à l’aide des routines de prise en charge HIDClass et des IOCTL des pilotes de classe HID.
HID Minidriver IOCTLs
Un minidriver HID doit gérer un ensemble de IOCTL. Seul le pilote de classe HID envoie ces IOCTL à un minidriver HID. Les applications en mode utilisateur et autres pilotes en mode noyau peuvent uniquement communiquer avec les collections HID à l’aide des routines de prise en charge HIDClass et des IOCTL des pilotes de classe HID.
Rubrique | Description |
---|---|
IOCTL_HID_ACTIVATE_DEVICE | La requête IOCTL_HID_ACTIVATE_DEVICE active un appareil HIDClass, ce qui le rend prêt pour les opérations d’E/S. |
IOCTL_HID_DEACTIVATE_DEVICE | La requête IOCTL_HID_DEACTIVATE_DEVICE désactive un appareil HIDClass, ce qui l’oblige à arrêter les opérations et à mettre fin à toutes les demandes d’E/S en suspens. |
IOCTL_HID_GET_DEVICE_ATTRIBUTES | La requête IOCTL_HID_GET_DEVICE_ATTRIBUTES obtient les attributs d’un appareil HIDClass dans une structure HID_DEVICE_ATTRIBUTES. |
IOCTL_HID_GET_DEVICE_DESCRIPTOR | La requête IOCTL_HID_GET_DEVICE_DESCRIPTOR obtient le descripteur HID d’un appareil HIDClass. |
IOCTL_HID_GET_REPORT_DESCRIPTOR | La demande IOCTL_HID_GET_REPORT_DESCRIPTOR obtient le descripteur de rapport pour un appareil HIDClass. |
IOCTL_HID_GET_STRING | La demande IOCTL_HID_GET_STRING obtient un ID de fabricant, un ID de produit ou un numéro de série pour une collection de niveau supérieur. La chaîne récupérée est une chaîne de caractères larges terminée par null dans un format lisible par l’utilisateur. |
IOCTL_HID_READ_REPORT | La requête IOCTL_HID_READ_REPORT transfère un rapport d’entrée d’un appareil HIDClass vers la mémoire tampon du pilote de classe HID. |
IOCTL_HID_WRITE_REPORT | La demande IOCTL_HID_WRITE_REPORT envoie un rapport HID à un appareil HIDClass. |
IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR | Le code de contrôle IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR obtient le descripteur physique d’un appareil HIDClass. |
IOCTL_UMDF_HID_GET_FEATURE | Le code de contrôle IOCTL_UMDF_HID_GET_FEATURE obtient un rapport de fonctionnalités à partir d’un appareil HIDClass. |
IOCTL_UMDF_HID_GET_INPUT_REPORT | Le code de contrôle IOCTL_UMDF_HID_GET_INPUT_REPORT retourne un rapport d’entrée à partir d’un appareil HIDClass. |
IOCTL_UMDF_HID_SET_FEATURE | Le code de contrôle IOCTL_UMDF_HID_GET_FEATURE envoie un rapport de fonctionnalité à un appareil HIDClass. |
IOCTL_UMDF_HID_SET_OUTPUT_REPORT | Le code de contrôle IOCTL_UMDF_HID_SET_OUTPUT_REPORT envoie un rapport de sortie à une collection de niveau supérieur. |
IOCTLs du pilote de classe HID
Le pilote de classe HID gère les IOCTL pour prendre en charge les collections de niveau supérieur.
Bien que les applications utilisateur puissent communiquer avec le pilote de classe HID en utilisant HidD_Xxx routines de prise en charge HIDClass, les pilotes en mode noyau doivent envoyer les demandes de contrôle d’appareil correspondantes décrites dans cette section.
Les paramètres d’entrée et de sortie sont spécifiques à la demande.
À la fin d’une demande, les membres du bloc d’E/S status sont définis comme suit :
Le membre Status est défini par le pilote de classe HID pour toutes les demandes qu’il gère.
Comme décrit pour chaque IOCTL, le membre Information est défini soit par le pilote de classe, soit par un pilote de niveau inférieur. Normalement, lorsqu’un pilote de niveau inférieur transfère des données depuis ou vers un appareil, le pilote de niveau inférieur définit Information sur le nombre d’octets transférés. Toutefois, le pilote de classe HID peut retourner une valeur différente.
Rubrique | Description |
---|---|
IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS | La demande IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS obtient la taille de la file d’attente du rapport d’entrée pour une collection de niveau supérieur. |
IOCTL_GET_PHYSICAL_DESCRIPTOR | La requête IOCTL_GET_PHYSICAL_DESCRIPTOR obtient le descripteur physique d’une collection de niveau supérieur. |
IOCTL_HID_DEVICERESET_NOTIFICATION | La demande IOCTL_HID_DEVICERESET_NOTIFICATION est envoyée par le pilote client HID au pilote de classe HID pour attendre un événement de réinitialisation initié par l’appareil. |
IOCTL_HID_DISABLE_SECURE_READ | La demande de IOCTL_HID_DISABLE_SECURE_READ annule une demande de IOCTL_HID_ENABLE_SECURE_READ pour une collection HID. |
IOCTL_HID_ENABLE_SECURE_READ | La requête IOCTL_HID_ENABLE_SECURE_READ permet une lecture sécurisée pour les fichiers ouverts d’une collection HID. |
IOCTL_HID_ENABLE_WAKE_ON_SX | La demande de IOCTL_HID_ENABLE_WAKE_ON_SX est utilisée pour indiquer la condition requise pour qu’un appareil puisse être mis en veille du système. |
IOCTL_HID_FLUSH_QUEUE | La requête IOCTL_HID_FLUSH_QUEUE supprime tous les rapports d’entrée non traités de la file d’attente de rapports d’entrée d’une collection de niveau supérieur. |
IOCTL_HID_GET_COLLECTION_DESCRIPTOR | La requête IOCTL_HID_GET_COLLECTION_DESCRIPTOR obtient les données préparées d’une collection de niveau supérieur, que le pilote de classe HID a extraites du descripteur de rapport de l’appareil physique lors de l’initialisation de l’appareil. |
IOCTL_HID_GET_COLLECTION_INFORMATION | La requête IOCTL_HID_GET_COLLECTION_INFORMATION obtient la structure HID_COLLECTION_INFORMATION d’une collection de niveau supérieur. |
IOCTL_HID_GET_DRIVER_CONFIG | La requête IOCTL_HID_GET_DRIVER_CONFIG récupère la configuration du pilote. |
IOCTL_HID_GET_FEATURE | La demande IOCTL_HID_GET_FEATURE retourne un rapport de fonctionnalité associé à une collection de niveau supérieur. |
IOCTL_HID_GET_HARDWARE_ID | La demande IOCTL_HID_GET_HARDWARE_ID obtient l’ID matériel Plug-and-Play d’une collection de niveau supérieur. |
IOCTL_HID_GET_INDEXED_STRING | La requête IOCTL_HID_GET_INDEXED_STRING obtient une chaîne incorporée spécifiée à partir d’une collection de niveau supérieur. |
IOCTL_HID_GET_INPUT_REPORT | La demande IOCTL_HID_GET_INPUT_REPORT obtient un rapport d’entrée à partir d’une collection de niveau supérieur. |
IOCTL_HID_GET_MANUFACTURER_STRING | La requête IOCTL_HID_GET_MANUFACTURER_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le fabricant de l’appareil. |
IOCTL_HID_GET_MS_GENRE_DESCRIPTOR | La requête IOCTL_HID_GET_MS_GENRE_DESCRIPTOR est utilisée pour récupérer le descripteur de genre pour l’appareil. |
IOCTL_HID_GET_POLL_FREQUENCY_MSEC | La requête IOCTL_HID_GET_POLL_FREQUENCY_MSEC obtient la fréquence d’interrogation actuelle, en millisecondes, d’une collection de niveau supérieur. |
IOCTL_HID_GET_PRODUCT_STRING | La demande IOCTL_HID_GET_PRODUCT_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le produit du fabricant. La chaîne récupérée est une chaîne de caractères larges terminée par NULL dans un format lisible par l’homme. Pour obtenir des informations générales sur les appareils HIDClass, consultez Collections HID. |
IOCTL_HID_GET_SERIALNUMBER_STRING | La demande IOCTL_HID_GET_SERIALNUMBER_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le numéro de série de l’appareil. |
IOCTL_HID_SET_DRIVER_CONFIG | La requête IOCTL_HID_SET_DRIVER_CONFIG définit la configuration du pilote. |
IOCTL_HID_SET_FEATURE | La demande IOCTL_HID_SET_FEATURE envoie un rapport de fonctionnalité à une collection de niveau supérieur. Pour obtenir des informations générales sur les appareils HIDClass, consultez Collections HID. |
IOCTL_HID_SET_OUTPUT_REPORT | La demande IOCTL_HID_SET_OUTPUT_REPORT envoie un rapport de sortie à une collection de niveau supérieur. |
IOCTL_HID_SET_POLL_FREQUENCY_MSEC | La requête IOCTL_HID_SET_POLL_FREQUENCY_MSEC définit la fréquence d’interrogation, en millisecondes, pour une collection de niveau supérieur. Les applications en mode utilisateur ou les pilotes en mode noyau qui effectuent des lectures irrégulières et opportunistes sur un appareil interrogé doivent fournir un intervalle d’interrogation de zéro. Dans ce cas, IOCTL_HID_SET_POLL_FREQUENCY_MSEC ne modifie pas réellement la fréquence d’interrogation de l’appareil ; mais si les données du rapport ne sont pas obsolètes lorsqu’elles sont lues, la lecture est effectuée immédiatement avec les données de rapport les plus récentes pour la collection indiquée. Si les données du rapport sont obsolètes, elles sont actualisées immédiatement, sans attendre l’expiration de l’intervalle d’interrogation, et la lecture est terminée avec les nouvelles données. Si la valeur de l’intervalle d’interrogation fourni dans l’IRP n’est pas égale à zéro, elle doit être >= MIN_POLL_INTERVAL_MSEC et <= MAX_POLL_INTERVAL_MSEC. L’interrogation peut être limitée s’il existe plusieurs collections de niveau supérieur. Pour obtenir des informations générales sur les appareils HIDClass, consultez Collections HID. |
IOCTL_HID_SET_S0_IDLE_TIMEOUT | La demande IOCTL_HID_SET_S0_IDLE_TIMEOUT est utilisée par un client pour informer le pilote de classe HID de la valeur de délai d’inactivité préférée du client. |
IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS | La requête IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS définit le nombre de mémoires tampons pour la file d’attente du rapport d’entrée d’une collection de niveau supérieur. Chaque file d’attente de rapport d’entrée est implémentée en tant que mémoire tampon en anneau. Si une collection transmet des données au pilote de classe HID plus rapidement que le pilote ne peut les lire, certaines données peuvent être perdues. Pour éviter ce type de perte, vous pouvez utiliser une demande de IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS pour ajuster le nombre de mémoires tampons que contient la file d’attente du rapport d’entrée. Le pilote de classe HID nécessite au moins deux mémoires tampons d’entrée. Le nombre maximal de mémoires tampons d’entrée que le pilote de classe HID prend en charge est de 512. Le nombre par défaut de mémoires tampons d’entrée est 32. Pour obtenir des informations générales sur les appareils HIDClass, consultez Collections HID. |
Réservé à une utilisation interne du système
Cette section répertorie, par ordre alphabétique, les routines, les structures, les types d’énumération et les types de données liés à HIDClass qui sont réservés à une utilisation interne du système.
- DeviceObjectState
- HID_DRIVER_CONFIG
- HID_INTERFACE_HIDPARSE
- HID_INTERFACE_NOTIFY_PNP
- HIDD_CONFIGURATION
- HidD_GetConfiguration
- HidD_GetMsGenreDescriptor
- HidD_SetConfiguration
- HIDP_COLLECTION_DESC
- HIDP_DEVICE_DESC
- HidP_FreeCollectionDescription
- HIDP_GETCOLDESC_DBG
- HIDP_KEYBOARD_DIRECTION
- HIDP_KEYBOARD_MODIFIER_STATE
- HIDP_REPORT_IDS
- HidP_SysPowerCaps
- HidP_SysPowerEvent
- HidP_TranslateUsageAndPagesToI8042ScanCodes
- PHID_STATUS_CHANGE
- PHIDP_INSERT_SCANCODES
- PHIDP_REPORT_DESCRIPTOR
DeviceObjectState
Le type d’énumération DeviceObjectState est réservé à une utilisation interne du système.
enum DeviceObjectState {
DeviceObjectStarted,
DeviceObjectStopped,
DeviceObjectRemoved
};
En-têtes déclarés dans Hidclass.h.
HID_DRIVER_CONFIG
La structure HID_DRIVER_CONFIG est réservée à une utilisation interne du système.
typedef struct _HID_DRIVER_CONFIG {
ULONG Size;
ULONG RingBufferSize;
} HID_DRIVER_CONFIG, *PHID_DRIVER_CONFIG;
En-têtes déclarés dans Hidclass.h.
HID_INTERFACE_HIDPARSE
La structure HID_INTERFACE_HIDPARSE est réservée à une utilisation interne du système.
typedef struct _HID_INTERFACE_HIDPARSE {
#ifndef __cplusplus
INTERFACE;
#else
INTERFACE i;
#endif
PHIDP_GETCAPS HidpGetCaps;
} HID_INTERFACE_HIDPARSE, *PHID_INTERFACE_HIDPARSE;
En-têtes déclarés dans Hidclass.h.
HID_INTERFACE_NOTIFY_PNP
La structure HID_INTERFACE_NOTIFY_PNP est réservée à une utilisation interne du système.
typedef struct _HID_INTERFACE_NOTIFY_PNP {
#ifndef __cplusplus
INTERFACE;
#else
INTERFACE i;
#endif
PHID_STATUS_CHANGE StatusChangeFn;
PVOID CallbackContext;
} HID_INTERFACE_NOTIFY_PNP, *PHID_INTERFACE_NOTIFY_PNP;
En-têtes déclarés dans Hidclass.h.
HIDD_CONFIGURATION
La structure HIDD_CONFIGURATION est réservée à une utilisation interne du système.
typedef struct _HIDD_CONFIGURATION {
PVOID cookie;
ULONG size;
ULONG RingBufferSize;
} HIDD_CONFIGURATION, *PHIDD_CONFIGURATION;
En-têtes déclarés dans Hidsdi.h.
HidD_GetConfiguration
La routine HidD_GetConfiguration est réservée à une utilisation interne du système.
BOOLEAN __stdcall
HidD_GetConfiguration(
IN HANDLE HidDeviceObject,
OUT PHIDD_CONFIGURATION Configuration,
IN ULONG ConfigurationLength
);
En-têtes déclarés dans Hidsdi.h.
HidD_GetMsGenreDescriptor
La routine HidD_GetMsGenreDescriptor est réservée à une utilisation interne du système.
BOOLEAN __stdcall
HidD_GetMsGenreDescriptor(
IN HANDLE HidDeviceObject,
OUT PVOID Buffer,
IN ULONG BufferLength
);
En-têtes déclarés dans Hidsdi.h.
HidD_SetConfiguration
La routine HidD_SetConfiguration est réservée à une utilisation interne du système.
BOOLEAN __stdcall
HidD_SetConfiguration(
IN HANDLE HidDeviceObject,
IN PHIDD_CONFIGURATION Configuration,
IN ULONG ConfigurationLength
);
En-têtes déclarés dans Hidsdi.h.
HIDP_COLLECTION_DESC
La structure HIDP_COLLECTION_DESC est réservée à une utilisation interne du système.
typedef struct _HIDP_COLLECTION_DESC {
USAGE UsagePage;
USAGE Usage;
UCHAR CollectionNumber;
UCHAR Reserved [15];
USHORT InputLength;
USHORT OutputLength;
USHORT FeatureLength;
USHORT PreparsedDataLength;
PHIDP_PREPARSED_DATA PreparsedData;
} HIDP_COLLECTION_DESC, *PHIDP_COLLECTION_DESC;
En-têtes déclarés dans Hidpddi.h.
HIDP_DEVICE_DESC
La structure HIDP_DEVICE_DESC est réservée à une utilisation interne du système.
typedef struct _HIDP_DEVICE_DESC {
PHIDP_COLLECTION_DESC CollectionDesc;
ULONG CollectionDescLength;
PHIDP_REPORT_IDS ReportIDs;
ULONG ReportIDsLength;
HIDP_GETCOLDESC_DBG Dbg;
} HIDP_DEVICE_DESC, *PHIDP_DEVICE_DESC;
En-têtes déclarés dans Hidpddi.h.
HidP_FreeCollectionDescription
La routine HidP_FreeCollectionDescription est réservée à une utilisation interne du système.
VOID
HidP_FreeCollectionDescription(
IN PHIDP_DEVICE_DESC DeviceDescription
);
En-têtes déclarés dans Hidpddi.h.
HIDP_GETCOLDESC_DBG
La structure HIDP_GETCOLDESC_DBG est réservée à une utilisation interne du système.
typedef struct _HIDP_GETCOLDESC_DBG {
ULONG BreakOffset;
ULONG ErrorCode;
ULONG Args[6];
} HIDP_GETCOLDESC_DBG, *PHIDP_GETCOLDESC_DBG;
En-têtes déclarés dans Hidpddi.h.
HIDP_KEYBOARD_DIRECTION
Le type d’énumération HIDP_KEYBOARD_DIRECTION est réservé à une utilisation interne du système.
typedef enum _HIDP_KEYBOARD_DIRECTION {
HidP_Keyboard_Break,
HidP_Keyboard_Make
} HIDP_KEYBOARD_DIRECTION;
En-têtes déclarés dans Hidpi.h.
HIDP_KEYBOARD_MODIFIER_STATE
La structure HIDP_KEYBOARD_MODIFIER_STATE est réservée à une utilisation interne du système.
typedef struct _HIDP_KEYBOARD_MODIFIER_STATE {
union {
struct {
ULONG LeftControl: 1;
ULONG LeftShift: 1;
ULONG LeftAlt: 1;
ULONG LeftGUI: 1;
ULONG RightControl: 1;
ULONG RightShift: 1;
ULONG RightAlt: 1;
ULONG RigthGUI: 1;
ULONG CapsLock: 1;
ULONG ScollLock: 1;
ULONG NumLock: 1;
ULONG Reserved: 21;
};
ULONG ul;
};
} HIDP_KEYBOARD_MODIFIER_STATE, *PHIDP_KEYBOARD_MODIFIER_STATE;
En-têtes déclarés dans Hidpi.h.
HIDP_REPORT_IDS
La structure HIDP_REPORT_IDS est réservée à une utilisation interne du système.
typedef struct _HIDP_REPORT_IDS {
UCHAR ReportID;
UCHAR CollectionNumber;
USHORT InputLength;
USHORT OutputLength;
USHORT FeatureLength;
} HIDP_REPORT_IDS, *PHIDP_REPORT_IDS;
En-têtes déclarés dans Hidpddi.h.
HidP_SysPowerCaps
La routine HidP_SysPowerCaps est réservée à une utilisation interne du système.
NTSTATUS
HidP_SysPowerCaps(
IN PHIDP_PREPARSED_DATA Ppd,
OUT PULONG OutputBuffer
);
En-têtes déclarés dans Hidpddi.h.
HidP_SysPowerEvent
La routine HidP_SysPowerEvent est réservée à une utilisation interne du système.
NTSTATUS
HidP_SysPowerEvent(
IN PCHAR HidPacket,
IN USHORT HidPacketLength,
IN PHIDP_PREPARSED_DATA Ppd,
OUT PULONG OutputBuffer
);
En-têtes déclarés dans Hidpddi.h.
HidP_TranslateUsageAndPagesToI8042ScanCodes
La routine HidP_TranslateUsageAndPagesToI8042ScanCodes est réservée à une utilisation interne du système.
NTSTATUS __stdcall
HidP_TranslateUsageAndPagesToI8042ScanCodes(
IN PUSAGE_AND_PAGE ChangedUsageList,
IN ULONG UsageListLength,
IN HIDP_KEYBOARD_DIRECTION KeyAction,
IN OUT PHIDP_KEYBOARD_MODIFIER_STATE ModifierState,
IN PHIDP_INSERT_SCANCODES InsertCodesProcedure,
IN PVOID InsertCodesContext
);
En-têtes déclarés dans Hidpi.h.
PHID_STATUS_CHANGE
La routine PHID_STATUS_CHANGE est réservée à une utilisation interne du système.
typedef VOID (*PHID_STATUS_CHANGE)(
PVOID Context,
enum DeviceObjectState State
);
En-têtes déclarés dans Hidclass.h.
PHIDP_INSERT_SCANCODES
La routine PHIDP_INSERT_SCANCODES est réservée à une utilisation interne du système.
typedef BOOLEAN (*PHIDP_INSERT_SCANCODES)(
IN PVOID Context,
IN PCHAR NewScanCodes,
IN ULONG Length
);
En-têtes déclarés dans Hidpi.h.
PHIDP_REPORT_DESCRIPTOR
Le type de données PHIDP_REPORT_DESCRIPTOR est réservé à une utilisation interne du système.
typedef PUCHAR PHIDP_REPORT_DESCRIPTOR;
En-têtes déclarés dans Hidpi.h.
Fonctions de rappel
Titre | Description |
---|---|
EVT_VHF_ASYNC_OPERATION | Le pilote source HID implémente ce rappel d’événement s’il souhaite prendre en charge l’une des quatre opérations asynchrones pour obtenir et définir des rapports HID. |
EVT_VHF_CLEANUP | Le pilote source HID implémente ce rappel d’événement aux ressources libres qui peuvent être allouées au périphérique HID virtuel. |
EVT_VHF_READY_FOR_NEXT_READ_REPORT | Le pilote source HID implémente cette fonction de rappel d’événement pour utiliser son schéma de mise en mémoire tampon pour les rapports d’entrée HID et souhaite recevoir une notification quand le rapport suivant peut être soumis à VHF. |
PHIDP_GETCAPS | La routine HidP_GetCaps retourne la structure HIDP_CAPS d’une collection de niveau supérieur. |
PI8042_ISR_WRITE_PORT | La routine de rappel de type PI8042_ISR_WRITE_PORT écrit des données dans un port i8042. I8042prt fournit ce rappel. |
PI8042_KEYBOARD_INITIALIZATION_ROUTINE | Une routine de rappel typée PI8042_KEYBOARD_INITIALIZATION_ROUTINE complète l’initialisation par défaut d’un clavier par I8042prt. |
PI8042_KEYBOARD_ISR | Une routine de rappel de type PI8042_KEYBOARD_ISR personnalise le fonctionnement du clavier I8042prt ISR. |
PI8042_MOUSE_ISR | Une routine de rappel de type PI8042_MOUSE_ISR personnalise le fonctionnement de l’ISR de la souris I8042prt. |
PI8042_QUEUE_PACKET | La routine de rappel typée PI8042_QUEUE_PACKET met en file d’attente un paquet de données d’entrée à traiter par le DPC ISR d’un clavier ou d’un périphérique de souris. I8042prt fournit ce rappel. |
PI8042_SYNCH_READ_PORT | La routine de rappel typée PI8042_SYNCH_READ_PORT effectue une lecture synchronisée à partir d’un port i8042. I8042prt fournit ce rappel. |
PI8042_SYNCH_WRITE_PORT | La routine de rappel typé PI8042_SYNCH_READ_PORT effectue une écriture synchronisée sur un port i8042. I8042prt fournit cette routine. |
PSERVICE_CALLBACK_ROUTINE | Un pilote de fonction appelle le rappel de service de classe dans sa routine d’achèvement de la répartition ISR. Le rappel du service de classe transfère les données d’entrée de la mémoire tampon de données d’entrée d’un appareil vers la file d’attente de données de classe. |
Codes de contrôle d’E/S
Titre | Description |
---|---|
IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS IOCTL | La demande IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS obtient la taille de la file d’attente du rapport d’entrée pour une collection de niveau supérieur. |
IOCTL_GET_PHYSICAL_DESCRIPTOR IOCTL | La demande IOCTL_GET_PHYSICAL_DESCRIPTOR obtient le descripteur physique d’une collection de niveau supérieur. Pour un minidriver, ce descripteur est le descripteur de l’appareil HIDClass. |
IOCTL_HID_ACTIVATE_DEVICE IOCTL | La demande IOCTL_HID_ACTIVATE_DEVICE active un appareil HIDClass, ce qui le rend prêt pour les opérations d’E/S. |
IOCTL_HID_DEACTIVATE_DEVICE IOCTL | La demande IOCTL_HID_DEACTIVATE_DEVICE désactive un appareil HIDClass, ce qui l’amène à arrêter les opérations et à arrêter toutes les demandes d’E/S en attente. |
IOCTL_HID_DEVICERESET_NOTIFICATION IOCTL | La demande IOCTL_HID_DEVICERESET_NOTIFICATION est envoyée par le pilote client HID au pilote de classe HID pour attendre un événement de réinitialisation initié par le périphérique. |
IOCTL_HID_DISABLE_SECURE_READ IOCTL | La demande IOCTL_HID_DISABLE_SECURE_READ annule une demande de IOCTL_HID_ENABLE_SECURE_READ pour une collection HID. |
IOCTL_HID_ENABLE_SECURE_READ IOCTL | La demande IOCTL_HID_ENABLE_SECURE_READ permet une lecture sécurisée pour les fichiers ouverts d’une collection HID. |
IOCTL_HID_ENABLE_WAKE_ON_SX IOCTL | La demande IOCTL_HID_ENABLE_WAKE_ON_SX est utilisée pour indiquer la nécessité pour un appareil de sortir du mode de veille du système. |
IOCTL_HID_FLUSH_QUEUE IOCTL | La requête IOCTL_HID_FLUSH_QUEUE supprime tous les rapports d’entrée non étudiés de la file d’attente de rapports d’entrée d’une collection de niveau supérieur. |
IOCTL_HID_GET_COLLECTION_DESCRIPTOR IOCTL | La demande IOCTL_HID_GET_COLLECTION_DESCRIPTOR obtient les données préparées d’une collection de niveau supérieur, que le pilote de classe HID a extraites du descripteur de rapport de l’appareil physique lors de l’initialisation de l’appareil. |
IOCTL_HID_GET_COLLECTION_INFORMATION IOCTL | La requête IOCTL_HID_GET_COLLECTION_INFORMATION obtient la structure HID_COLLECTION_INFORMATION d’une collection de niveau supérieur. |
IOCTL_HID_GET_DEVICE_ATTRIBUTES IOCTL | La demande IOCTL_HID_GET_DEVICE_ATTRIBUTES obtient les attributs d’un appareil HIDClass dans une structure HID_DEVICE_ATTRIBUTES. |
IOCTL_HID_GET_DEVICE_DESCRIPTOR IOCTL | La demande IOCTL_HID_GET_DEVICE_DESCRIPTOR obtient le descripteur HID d’un appareil HIDClass. |
IOCTL_HID_GET_DRIVER_CONFIG IOCTL | La demande IOCTL_HID_GET_DRIVER_CONFIG récupère la configuration du pilote. |
IOCTL_HID_GET_FEATURE IOCTL | La demande IOCTL_HID_GET_FEATURE retourne un rapport de fonctionnalité associé à une collection de niveau supérieur. |
IOCTL_HID_GET_HARDWARE_ID IOCTL | La demande IOCTL_HID_GET_HARDWARE_ID obtient l’ID matériel Plug-and-Play d’une collection de niveau supérieur. |
IOCTL_HID_GET_INDEXED_STRING IOCTL | La demande IOCTL_HID_GET_INDEXED_STRING obtient une chaîne incorporée spécifiée à partir d’une collection de niveau supérieur. |
IOCTL_HID_GET_INPUT_REPORT IOCTL | La demande IOCTL_HID_GET_INPUT_REPORT obtient un rapport d’entrée à partir d’une collection de niveau supérieur. |
IOCTL_HID_GET_MANUFACTURER_STRING IOCTL | La requête IOCTL_HID_GET_MANUFACTURER_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le fabricant de l’appareil. |
IOCTL_HID_GET_MS_GENRE_DESCRIPTOR IOCTL | La requête IOCTL_HID_GET_MS_GENRE_DESCRIPTOR est utilisée pour récupérer le descripteur de genre pour l’appareil. |
IOCTL_HID_GET_POLL_FREQUENCY_MSEC IOCTL | La requête IOCTL_HID_GET_POLL_FREQUENCY_MSEC obtient la fréquence d’interrogation actuelle, en millisecondes, d’une collection de niveau supérieur. |
IOCTL_HID_GET_PRODUCT_STRING IOCTL | La demande IOCTL_HID_GET_PRODUCT_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le produit du fabricant. La chaîne récupérée est une chaîne de caractères larges terminée par null dans un format lisible par l’utilisateur. |
IOCTL_HID_GET_REPORT_DESCRIPTOR IOCTL | La demande IOCTL_HID_GET_REPORT_DESCRIPTOR obtient le descripteur de rapport pour un appareil HIDClass. |
IOCTL_HID_GET_SERIALNUMBER_STRING IOCTL | La requête IOCTL_HID_GET_SERIALNUMBER_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le numéro de série de l’appareil. |
IOCTL_HID_GET_STRING IOCTL | La demande IOCTL_HID_GET_STRING obtient un ID de fabricant, un ID de produit ou un numéro de série pour une collection de niveau supérieur. La chaîne récupérée est une chaîne de caractères larges terminée par null dans un format lisible par l’utilisateur. |
IOCTL_HID_READ_REPORT IOCTL | La requête IOCTL_HID_READ_REPORT transfère un rapport d’entrée d’un appareil HIDClass vers la mémoire tampon du pilote de classe HID. |
IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST IOCTL | Le code de contrôle IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST est le IOCTL de la demande de notification inactive IRP que HIDClass envoie aux mini-pilotes HID, tels que HIDUSB, pour informer le pilote de bus que l’appareil est désormais inactif. |
IOCTL_HID_SET_DRIVER_CONFIG IOCTL | La requête IOCTL_HID_SET_DRIVER_CONFIG définit la configuration du pilote. |
IOCTL_HID_SET_FEATURE IOCTL | La requête IOCTL_HID_SET_FEATURE envoie un rapport de fonctionnalités à une collection de niveau supérieur. |
IOCTL_HID_SET_OUTPUT_REPORT IOCTL | La requête IOCTL_HID_SET_OUTPUT_REPORT envoie un rapport de sortie à une collection de niveau supérieur. |
IOCTL_HID_SET_POLL_FREQUENCY_MSEC IOCTL | La requête IOCTL_HID_SET_POLL_FREQUENCY_MSEC définit la fréquence d’interrogation, en millisecondes, pour une collection de niveau supérieur. |
IOCTL_HID_SET_S0_IDLE_TIMEOUT IOCTL | La requête IOCTL_HID_SET_S0_IDLE_TIMEOUT est utilisée par un client pour informer le pilote de classe HID de la valeur de délai d’inactivité préférée du client. |
IOCTL_HID_WRITE_REPORT IOCTL | La demande IOCTL_HID_WRITE_REPORT envoie un rapport HID à un appareil HIDClass. |
IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER IOCTL | La requête IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER n’est pas prise en charge. |
IOCTL_INTERNAL_I8042_HOOK_KEYBOARD IOCTL | La demande IOCTL_INTERNAL_I8042_HOOK_KEYBOARD effectue les opérations suivantes |
IOCTL_INTERNAL_I8042_HOOK_MOUSE IOCTL | La requête IOCTL_INTERNAL_I8042_HOOK_MOUSE ajoute une routine de rappel ISR à l’ISR de la souris I8042prt. |
IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION IOCTL | La requête IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION transmet un pointeur vers un objet d’interruption de clavier. |
IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER IOCTL | La requête IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER écrit des données dans le contrôleur de port i8042 pour contrôler le fonctionnement d’un périphérique clavier. |
IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION IOCTL | La requête IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION transmet un pointeur vers un objet d’interruption de souris. |
IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER IOCTL | La requête IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER écrit des données dans le contrôleur de port i8042 pour contrôler le fonctionnement d’un appareil de souris. |
IOCTL_INTERNAL_KEYBOARD_CONNECT IOCTL | La requête IOCTL_INTERNAL_KEYBOARD_CONNECT connecte le service Kbdclass au clavier. |
IOCTL_INTERNAL_KEYBOARD_DISCONNECT IOCTL | La demande de IOCTL_INTERNAL_KEYBOARD_DISCONNECT est terminée avec une status de STATUS_NOT_IMPLEMENTED. Notez qu’un clavier Plug-and-Play peut être ajouté ou supprimé par le gestionnaire Plug-and-Play. |
IOCTL_INTERNAL_MOUSE_CONNECT IOCTL | La requête IOCTL_INTERNAL_MOUSE_CONNECT connecte le service Mouclass à un appareil de souris. |
IOCTL_INTERNAL_MOUSE_DISCONNECT IOCTL | La demande de IOCTL_INTERNAL_MOUSE_DISCONNECT est effectuée par Moufiltr avec une status d’erreur de STATUS_NOT_IMPLEMENTED. |
IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS IOCTL | La requête IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS définit le nombre de mémoires tampons pour la file d’attente de rapport d’entrée d’une collection de niveau supérieur. |
IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR IOCTL | Le code de contrôle IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR obtient le descripteur physique d’un appareil HIDClass. |
IOCTL_UMDF_HID_GET_FEATURE IOCTL | Le code de contrôle IOCTL_UMDF_HID_GET_FEATURE obtient un rapport de fonctionnalités à partir d’un appareil HIDClass. |
IOCTL_UMDF_HID_GET_INPUT_REPORT IOCTL | Le code de contrôle IOCTL_UMDF_HID_GET_INPUT_REPORT retourne un rapport d’entrée à partir d’un appareil HIDClass. |
IOCTL_UMDF_HID_SET_FEATURE IOCTL | Le code de contrôle IOCTL_UMDF_HID_GET_FEATURE envoie un rapport de fonctionnalité à un appareil HIDClass. |
IOCTL_UMDF_HID_SET_OUTPUT_REPORT IOCTL | Le code de contrôle IOCTL_UMDF_HID_SET_OUTPUT_REPORT envoie un rapport de sortie à une collection de niveau supérieur. |
IOCTLs
IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS La demande IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS obtient la taille de la file d’attente du rapport d’entrée pour une collection de niveau supérieur. |
IOCTL_GET_PHYSICAL_DESCRIPTOR La requête IOCTL_GET_PHYSICAL_DESCRIPTOR obtient le descripteur physique d’une collection de niveau supérieur. Pour un minidriver, ce descripteur est le descripteur de l’appareil HIDClass. |
IOCTL_HID_ACTIVATE_DEVICE La requête IOCTL_HID_ACTIVATE_DEVICE active un appareil HIDClass, ce qui le rend prêt pour les opérations d’E/S. |
IOCTL_HID_DEACTIVATE_DEVICE La requête IOCTL_HID_DEACTIVATE_DEVICE désactive un appareil HIDClass, ce qui l’oblige à arrêter les opérations et à mettre fin à toutes les demandes d’E/S en suspens. |
IOCTL_HID_DEVICERESET_NOTIFICATION La demande IOCTL_HID_DEVICERESET_NOTIFICATION est envoyée par le pilote client HID au pilote de classe HID pour attendre un événement de réinitialisation initié par l’appareil. |
IOCTL_HID_DISABLE_SECURE_READ La demande de IOCTL_HID_DISABLE_SECURE_READ annule une demande de IOCTL_HID_ENABLE_SECURE_READ pour une collection HID. |
IOCTL_HID_ENABLE_SECURE_READ La requête IOCTL_HID_ENABLE_SECURE_READ permet une lecture sécurisée pour les fichiers ouverts d’une collection HID. |
IOCTL_HID_ENABLE_WAKE_ON_SX La demande de IOCTL_HID_ENABLE_WAKE_ON_SX est utilisée pour indiquer la condition requise pour qu’un appareil puisse être mis en veille du système. |
IOCTL_HID_FLUSH_QUEUE La requête IOCTL_HID_FLUSH_QUEUE supprime tous les rapports d’entrée non traités de la file d’attente de rapports d’entrée d’une collection de niveau supérieur. |
IOCTL_HID_GET_COLLECTION_DESCRIPTOR La requête IOCTL_HID_GET_COLLECTION_DESCRIPTOR obtient les données préparées d’une collection de niveau supérieur, que le pilote de classe HID a extraites du descripteur de rapport de l’appareil physique lors de l’initialisation de l’appareil. |
IOCTL_HID_GET_COLLECTION_INFORMATION La requête IOCTL_HID_GET_COLLECTION_INFORMATION obtient la structure HID_COLLECTION_INFORMATION d’une collection de niveau supérieur. |
IOCTL_HID_GET_DEVICE_ATTRIBUTES La requête IOCTL_HID_GET_DEVICE_ATTRIBUTES obtient les attributs d’un appareil HIDClass dans une structure HID_DEVICE_ATTRIBUTES. |
IOCTL_HID_GET_DEVICE_DESCRIPTOR La requête IOCTL_HID_GET_DEVICE_DESCRIPTOR obtient le descripteur HID d’un appareil HIDClass. |
IOCTL_HID_GET_DRIVER_CONFIG La requête IOCTL_HID_GET_DRIVER_CONFIG récupère la configuration du pilote. |
IOCTL_HID_GET_FEATURE La demande IOCTL_HID_GET_FEATURE retourne un rapport de fonctionnalité associé à une collection de niveau supérieur. |
IOCTL_HID_GET_HARDWARE_ID La demande IOCTL_HID_GET_HARDWARE_ID obtient l’ID matériel Plug-and-Play d’une collection de niveau supérieur. |
IOCTL_HID_GET_INDEXED_STRING La requête IOCTL_HID_GET_INDEXED_STRING obtient une chaîne incorporée spécifiée à partir d’une collection de niveau supérieur. |
IOCTL_HID_GET_INPUT_REPORT La demande IOCTL_HID_GET_INPUT_REPORT obtient un rapport d’entrée à partir d’une collection de niveau supérieur. |
IOCTL_HID_GET_MANUFACTURER_STRING La requête IOCTL_HID_GET_MANUFACTURER_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le fabricant de l’appareil. |
IOCTL_HID_GET_MS_GENRE_DESCRIPTOR La requête IOCTL_HID_GET_MS_GENRE_DESCRIPTOR est utilisée pour récupérer le descripteur de genre pour l’appareil. |
IOCTL_HID_GET_POLL_FREQUENCY_MSEC La requête IOCTL_HID_GET_POLL_FREQUENCY_MSEC obtient la fréquence d’interrogation actuelle, en millisecondes, d’une collection de niveau supérieur. |
IOCTL_HID_GET_PRODUCT_STRING La demande IOCTL_HID_GET_PRODUCT_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le produit du fabricant. La chaîne récupérée est une chaîne de caractères larges terminée par NULL dans un format lisible par l’homme. |
IOCTL_HID_GET_REPORT_DESCRIPTOR La demande IOCTL_HID_GET_REPORT_DESCRIPTOR obtient le descripteur de rapport pour un appareil HIDClass. |
IOCTL_HID_GET_SERIALNUMBER_STRING La demande IOCTL_HID_GET_SERIALNUMBER_STRING obtient la chaîne incorporée d’une collection de niveau supérieur qui identifie le numéro de série de l’appareil. |
IOCTL_HID_GET_STRING La demande IOCTL_HID_GET_STRING obtient un ID de fabricant, un ID de produit ou un numéro de série pour une collection de niveau supérieur. La chaîne récupérée est une chaîne de caractères larges terminée par NULL dans un format lisible par l’homme. |
IOCTL_HID_READ_REPORT La requête IOCTL_HID_READ_REPORT transfère un rapport d’entrée d’un appareil HIDClass dans la mémoire tampon du pilote de classe HID. |
IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST Le code de contrôle IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST correspond à l’IOCTL de l’IRP de demande de notification inactive que HIDClass envoie aux mini-pilotes HID, tels que HIDUSB, pour informer le pilote de bus que l’appareil est désormais inactif. |
IOCTL_HID_SET_DRIVER_CONFIG La requête IOCTL_HID_SET_DRIVER_CONFIG définit la configuration du pilote. |
IOCTL_HID_SET_FEATURE La demande IOCTL_HID_SET_FEATURE envoie un rapport de fonctionnalité à une collection de niveau supérieur. |
IOCTL_HID_SET_OUTPUT_REPORT La demande IOCTL_HID_SET_OUTPUT_REPORT envoie un rapport de sortie à une collection de niveau supérieur. |
IOCTL_HID_SET_POLL_FREQUENCY_MSEC La requête IOCTL_HID_SET_POLL_FREQUENCY_MSEC définit la fréquence d’interrogation, en millisecondes, pour une collection de niveau supérieur. |
IOCTL_HID_SET_S0_IDLE_TIMEOUT La demande IOCTL_HID_SET_S0_IDLE_TIMEOUT est utilisée par un client pour informer le pilote de classe HID de la valeur de délai d’inactivité préférée du client. |
IOCTL_HID_WRITE_REPORT La demande IOCTL_HID_WRITE_REPORT envoie un rapport HID à un appareil HIDClass. |
IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER La demande IOCTL_INTERNAL_I8042_CONTROLLER_WRITE_BUFFER n’est pas prise en charge. |
IOCTL_INTERNAL_I8042_HOOK_KEYBOARD La requête IOCTL_INTERNAL_I8042_HOOK_KEYBOARD effectue les opérations suivantes :Ajoute une routine de rappel d’initialisation à la routine d’initialisation du clavier I8042prtAjouter une routine de rappel ISR au clavier I8042prt ISRL’initialisation et les rappels ISR sont facultatifs et sont fournis par un pilote de filtre de niveau supérieur pour un périphérique clavier de style PS/2. Une fois que I8042prt a reçu une demande de IOCTL_INTERNAL_KEYBOARD_CONNECT, il envoie une demande de IOCTL_INTERNAL_I8042_HOOK_KEYBOARD synchrone en haut de la pile du périphérique clavier. Une fois que Kbfiltr a reçu la demande de clavier de raccordement, Kbfiltr filtre la demande de la manière suivante : Enregistre les informations de niveau supérieur passées à Kbfiltr, qui inclut le contexte d’un objet d’appareil de niveau supérieur, un pointeur vers un rappel d’initialisation et un pointeur vers un rappel ISRReplace les informations de niveau supérieur avec ses propresEnregistre le contexte de I8042prt et des pointeurs vers les rappels que le rappel ISR Kbfiltr peut utiliserPour plus d’informations sur cette requête et les rappels, Consultez les rubriques suivantes : Routines de rappel I8042prt Routines de rappelKbfiltr. |
IOCTL_INTERNAL_I8042_HOOK_MOUSE La requête IOCTL_INTERNAL_I8042_HOOK_MOUSE ajoute une routine de rappel ISR à l’ISR de souris I8042prt. |
IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION La requête IOCTL_INTERNAL_I8042_KEYBOARD_START_INFORMATION passe un pointeur vers un objet d’interruption du clavier. |
IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER La demande IOCTL_INTERNAL_I8042_KEYBOARD_WRITE_BUFFER écrit des données dans le contrôleur de port i8042 pour contrôler le fonctionnement d’un périphérique clavier. |
IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION La requête IOCTL_INTERNAL_I8042_MOUSE_START_INFORMATION passe un pointeur vers un objet d’interruption de la souris. |
IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER La demande IOCTL_INTERNAL_I8042_MOUSE_WRITE_BUFFER écrit des données dans le contrôleur de port i8042 pour contrôler le fonctionnement d’un appareil souris. |
IOCTL_INTERNAL_KEYBOARD_CONNECT La demande IOCTL_INTERNAL_KEYBOARD_CONNECT connecte le service Kbdclass au clavier. |
IOCTL_INTERNAL_KEYBOARD_DISCONNECT La demande IOCTL_INTERNAL_KEYBOARD_DISCONNECT est terminée avec une status de STATUS_NOT_IMPLEMENTED. Notez qu’un clavier Plug-and-Play peut être ajouté ou supprimé par le gestionnaire Plug-and-Play. |
IOCTL_INTERNAL_MOUSE_CONNECT La demande IOCTL_INTERNAL_MOUSE_CONNECT connecte le service Mouclass à un appareil de souris. |
IOCTL_INTERNAL_MOUSE_DISCONNECT La demande IOCTL_INTERNAL_MOUSE_DISCONNECT est effectuée par Moufiltr avec une erreur status de STATUS_NOT_IMPLEMENTED. |
IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS La requête IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS définit le nombre de mémoires tampons pour la file d’attente du rapport d’entrée d’une collection de niveau supérieur. |
IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR Le code de contrôle IOCTL_UMDF_GET_PHYSICAL_DESCRIPTOR obtient le descripteur physique d’un appareil HIDClass. |
IOCTL_UMDF_HID_GET_FEATURE Le code de contrôle IOCTL_UMDF_HID_GET_FEATURE obtient un rapport de fonctionnalité à partir d’un appareil HIDClass. |
IOCTL_UMDF_HID_GET_INPUT_REPORT Le code de contrôle IOCTL_UMDF_HID_GET_INPUT_REPORT retourne un rapport d’entrée à partir d’un appareil HIDClass. |
IOCTL_UMDF_HID_SET_FEATURE Le code de contrôle IOCTL_UMDF_HID_GET_FEATURE envoie un rapport de fonctionnalité à un appareil HIDClass. |
IOCTL_UMDF_HID_SET_OUTPUT_REPORT Le code de contrôle IOCTL_UMDF_HID_SET_OUTPUT_REPORT envoie un rapport de sortie à une collection de niveau supérieur. |
Énumérations
HIDP_REPORT_TYPE Le type d’énumération HIDP_REPORT_TYPE est utilisé pour spécifier un type de rapport HID. |
KEYBOARD_SCAN_STATE Le type d’énumération KEYBOARD_SCAN_STATE indique l’état d’analyse d’un octet d’entrée à partir d’un clavier. |
MOUSE_STATE Le type d’énumération MOUSE_STATE identifie l’état actuel de l’entrée à partir d’une souris. |
Fonctions
EVT_HIDSPICX_NOTIFY_POWERDOWN En savoir plus sur les alertes suivantes : EVT_HIDSPICX_NOTIFY_POWERDOWN |
EVT_HIDSPICX_RESETDEVICE En savoir plus sur les alertes suivantes : EVT_HIDSPICX_RESETDEVICE |
EVT_VHF_ASYNC_OPERATION Le pilote source HID implémente ce rappel d’événement s’il souhaite prendre en charge l’une des quatre opérations asynchrones pour obtenir et définir des rapports HID. |
EVT_VHF_CLEANUP Le pilote source HID implémente ce rappel d’événement aux ressources libres qui peuvent être allouées au périphérique HID virtuel. |
EVT_VHF_READY_FOR_NEXT_READ_REPORT Le pilote source HID implémente cette fonction de rappel d’événement pour utiliser son schéma de mise en mémoire tampon pour les rapports d’entrée HID et souhaite recevoir une notification quand le rapport suivant peut être soumis à VHF. |
HidD_FlushQueue La routine HidD_FlushQueue supprime tous les rapports d’entrée en attente dans la file d’attente d’entrée d’une collection de niveau supérieur. |
HidD_FreePreparsedData La routine HidD_FreePreparsedData libère les ressources que le pilote de classe HID a allouées pour contenir les données préparées d’une collection de niveau supérieur. |
HidD_GetAttributes La routine HidD_GetAttributes retourne les attributs d’une collection de niveau supérieur spécifiée. |
HidD_GetFeature La routine HidD_GetFeature retourne un rapport de fonctionnalité à partir d’une collection de niveau supérieur spécifiée. |
HidD_GetHidGuid La routine HidD_GetHidGuid retourne l’interface d’appareilGUID pour les appareils HIDClass. |
HidD_GetIndexedString La routine HidD_GetIndexedString retourne une chaîne incorporée spécifiée à partir d’une collection de niveau supérieur. |
HidD_GetInputReport La routine HidD_GetInputReport retourne des rapports d’entrée à partir d’une collection de niveau supérieur. |
HidD_GetManufacturerString La routine HidD_GetManufacturerString retourne la chaîne incorporée d’une collection de niveau supérieur qui identifie le fabricant. |
HidD_GetNumInputBuffers La routine HidD_GetNumInputBuffers retourne la taille actuelle, en nombre de rapports, de la mémoire tampon en anneau que le pilote de classe HID utilise pour mettre en file d’attente les rapports d’entrée d’une collection de niveau supérieur spécifiée. |
HidD_GetPhysicalDescriptor La routine HidD_GetPhysicalDescriptor retourne la chaîne incorporée d’une collection de niveau supérieur qui identifie l’appareil physique du regroupement. |
HidD_GetPreparsedData La routine HidD_GetPreparsedData retourne les données préparées d’une collection de niveau supérieur. |
HidD_GetProductString La routine HidD_GetProductString retourne la chaîne incorporée d’une collection de niveau supérieur qui identifie le produit du fabricant. |
HidD_GetSerialNumberString La routine HidD_GetSerialNumberString retourne la chaîne incorporée d’une collection de niveau supérieur qui identifie le numéro de série de l’appareil physique de la collection. |
HidD_SetFeature La routine HidD_SetFeature envoie un rapport de fonctionnalité à une collection de niveau supérieur. |
HidD_SetNumInputBuffers La routine HidD_SetNumInputBuffers définit le nombre maximal de rapports d’entrée que la mémoire tampon d’anneau de pilote de classe HID peut contenir pour une collection de niveau supérieur spécifiée. |
HidD_SetOutputReport La routine HidD_SetOutputReport envoie un rapport de sortie à une collection de niveau supérieur. |
HidP_GetButtonArray HidP_GetButtonArray retourne un tableau de structures HIDP_BUTTON_ARRAY_DATA pour le rapport spécifié. |
HidP_GetButtonCaps La routine HidP_GetButtonCaps retourne un tableau de fonctionnalités de bouton qui décrit tous les boutons de contrôle HID d’une collection de niveau supérieur pour un type spécifié de rapport HID. |
HidP_GetButtons La macro HidP_GetButtons est un alias mnémonique pour la fonction HHidP_GetUsages. |
HidP_GetButtonsEx La macro HidP_GetButtonsEx est un alias mnémonique pour la fonction HidP_GetUsagesEx. |
HidP_GetCaps La routine HidP_GetCaps retourne la structure HIDP_CAPS d’une collection de niveau supérieur. Cette routine se trouve dans hidpi.h. |
HidP_GetCollectionDescription Remplit un bloc de description d’appareil avec la description du regroupement et les informations d’ID de rapport correspondantes pour le descripteur de rapport spécifié. |
HidP_GetData La routine HidP_GetData retourne, pour un rapport spécifié, un tableau de structures HIDP_DATA qui identifient les index de données de tous les boutons de contrôle HID actuellement définis sur ON (1), ainsi que les index de données et les données associés à toutes les valeurs de contrôle HID. |
HidP_GetExtendedAttributes La routine HidP_GetExtendedAttributes retourne les attributs étendus d’un contrôle HID. |
HidP_GetLinkCollectionNodes La routine HidP_GetLinkCollectionNodes retourne le tableau de collection de liens d’une collection de niveau supérieur. |
HidP_GetScaledUsageValue La routine HidP_GetScaledUsageValue retourne le résultat signé et mis à l’échelle d’une valeur de contrôle HID extraite d’un rapport HID. |
HidP_GetSpecificButtonCaps La routine HidP_GetSpecificButtonCaps retourne un tableau de fonctionnalités de bouton qui décrit tous les boutons de contrôle HID d’une collection de niveau supérieur qui répondent à des critères de sélection spécifiés. |
HidP_GetSpecificValueCaps La routine HidP_GetSpecificValueCaps retourne un tableau de fonctionnalités de valeur qui décrit toutes les valeurs de contrôle HID qui répondent à un critère de sélection spécifié. |
HidP_GetUsages La routine HidP_GetUsages retourne une liste de toutes les utilisations du bouton de contrôle HID qui se trouvent sur une page d’utilisation spécifiée et sont définies sur ON dans un rapport HID. |
HidP_GetUsagesEx La routine HidP_GetUsagesEx retourne une liste de toutes les utilisations du bouton de contrôle HID qui sont définies sur ON dans un rapport HID. |
HidP_GetUsageValue La routine HidP_GetUsageValue extrait les données associées à une valeur de contrôle HID qui correspond aux critères de sélection dans un rapport HID. |
HidP_GetUsageValueArray La routine HidP_GetUsageValueArray extrait les données associées à un tableau de valeurs d’utilisation de contrôle HID à partir d’un rapport HID. |
HidP_GetValueCaps La routine HidP_GetValueCaps retourne un tableau de fonctionnalités de valeur qui décrit toutes les valeurs de contrôle HID dans une collection de niveau supérieur pour un type spécifié de rapport HID. |
HidP_GetVersion La fonction HidP_GetVersion est une implémentation d’en-tête uniquement qui retourne la version de l’API HID. |
HidP_InitializeReportForID La routine HidP_InitializeReportForID initialise un rapport HID. |
HidP_MaxDataListLength La routine HidP_MaxDataListLength retourne le nombre maximal de structures HIDP_DATA que HidP_GetData pouvez retourner pour un type spécifié de rapport HID et une collection de niveau supérieur spécifiée. |
HidP_MaxUsageListLength La routine HidP_MaxUsageListLength retourne le nombre maximal d’utilisations HID que HidP_GetUsages pouvez retourner pour un type spécifié de rapport HID et une collection de niveau supérieur spécifiée. |
HidP_SetButtonArray La fonction HidP_SetButtonArray définit l’état des boutons via un tableau de structures HIDP_BUTTON_ARRAY_DATA. |
HidP_SetButtons La macro HidP_SetButtons est un alias mnémonique pour la fonction HidP_SetUsages. |
HidP_SetData La routine HidP_SetData définit un ensemble spécifié d’utilisations de bouton de contrôle HID et de valeurs dans un rapport HID. |
HidP_SetScaledUsageValue La routine HidP_SetScaledUsageValue convertit un nombre physique signé et mis à l’échelle en valeur logique d’une utilisation HID et définit la valeur d’utilisation dans un rapport HID spécifié. |
HidP_SetUsages Le HidP_SetUsages routine définit les boutons de contrôle HID spécifiés ON (1) dans un rapport HID. |
HidP_SetUsageValue La routine HidP_SetUsageValue définit une valeur de contrôle HID dans un rapport HID spécifié. |
HidP_SetUsageValueArray La routine HidP_SetUsageValueArray définit un tableau de valeurs d’utilisation de contrôle HID dans un rapport HID spécifié. |
HidP_TranslateUsagesToI8042ScanCodes La routine HidP_TranslateUsagesToI8042ScanCodes mappe une liste d’utilisations HID sur la page d’utilisation HID_USAGE_PAGE_KEYBOARD à leurs codes d’analyse PS/2 respectifs (jeu de codes d’analyse 1). |
HidP_UnsetButtons La macro HidP_UnsetButtons est un alias mnémonique pour la fonction HidP_UnsetUsages. |
HidP_UnsetUsages Le HidP_UnsetUsages de routine définit le bouton de contrôle HID spécifié inglément OFF (zéro) dans un rapport HID. |
HidP_UsageAndPageListDifference La fonction HidP_UsageAndPageListDifference retourne la différence entre deux listes d’utilisations. |
HidP_UsageListDifference La routine HidP_UsageListDifference retourne les différences entre deux tableaux d’utilisations HID. |
HidRegisterMinidriver La routine HidRegisterMinidriver est appelée par les minidrivers HID, lors de leur initialisation, pour s’inscrire auprès du pilote de classe HID. |
HIDSPICX_DEVICE_CONFIG_INIT En savoir plus sur les alertes suivantes : HIDSPICX_DEVICE_CONFIG_INIT |
HidSpiCxDeviceConfigure En savoir plus sur : HidSpiCxDeviceConfigure |
HidSpiCxDeviceInitConfig En savoir plus sur : HidSpiCxDeviceInitConfig |
HidSpiCxNotifyDeviceReset En savoir plus sur : HidSpiCxNotifyDeviceReset |
PHIDP_GETCAPS La routine HidP_GetCaps retourne la structure HIDP_CAPS d’une collection de niveau supérieur. Cette routine se trouve dans hidclass.h. |
PI8042_ISR_WRITE_PORT La routine de rappel de type PI8042_ISR_WRITE_PORT écrit des données dans un port i8042. I8042prt fournit ce rappel. |
PI8042_KEYBOARD_INITIALIZATION_ROUTINE Une routine de rappel de type PI8042_KEYBOARD_INITIALIZATION_ROUTINE complète l’initialisation par défaut d’un clavier par I8042prt. |
PI8042_KEYBOARD_ISR Une routine de rappel de type PI8042_KEYBOARD_ISR personnalise le fonctionnement du clavier I8042prt ISR. |
PI8042_MOUSE_ISR Une routine de rappel de type PI8042_MOUSE_ISR personnalise le fonctionnement de l’ISR de la souris I8042prt. |
PI8042_QUEUE_PACKET La routine de rappel de type PI8042_QUEUE_PACKET met en file d’attente un paquet de données d’entrée pour traitement par le DPC ISR d’un clavier ou d’un périphérique de souris. I8042prt fournit ce rappel. |
PI8042_SYNCH_READ_PORT La routine de rappel de type PI8042_SYNCH_READ_PORT effectue une lecture synchronisée à partir d’un port i8042. I8042prt fournit ce rappel. |
PI8042_SYNCH_WRITE_PORT La routine de rappel de type PI8042_SYNCH_READ_PORT effectue une écriture synchronisée sur un port i8042. I8042prt fournit cette routine. |
PSERVICE_CALLBACK_ROUTINE Un pilote de fonction appelle le rappel de service de classe dans sa routine d’achèvement de la répartition ISR. Le rappel du service de classe transfère les données d’entrée de la mémoire tampon de données d’entrée d’un appareil vers la file d’attente de données de classe. |
VHF_CONFIG_INIT Utilisez la fonction VHF_CONFIG_INIT pour initialiser les membres requis de la structure VHF_CONFIG allouée par le pilote source HID. |
VhfAsyncOperationComplete Le pilote source HID appelle cette méthode pour définir les résultats d’une opération asynchrone. |
VhfCreate Le pilote source HID appelle cette méthode pour créer un appareil HID virtuel. |
VhfDelete Le pilote de périphérique HID Source appelle cette méthode pour supprimer un appareil VHF. |
VhfReadReportSubmit Le pilote source HID appelle cette méthode pour envoyer un rapport HID Read (Input) à Virtual HID Framework (VHF). |
VhfStart Le pilote source HID appelle cette méthode pour démarrer le périphérique HID virtuel. |
Structures
CONNECT_DATA CONNECT_DATA spécifie les informations que Kbdclass et Mouclass utilisent pour se connecter à un port clavier ou souris. |
HID_COLLECTION_INFORMATION La structure HID_COLLECTION_INFORMATION contient des informations générales sur une collection de niveau supérieur. |
HID_DESCRIPTOR La structure HID_DESCRIPTOR représente un descripteur HID pour un appareil HIDClass. |
HID_DEVICE_ATTRIBUTES La structure HID_DEVICE_ATTRIBUTES contient des informations sur un appareil HIDClass. |
HID_DEVICE_EXTENSION La structure HID_DEVICE_EXTENSION est utilisée par un minidriver HID comme disposition pour l’extension de l’appareil de l’objet d’appareil fonctionnel d’un appareil HIDClass. |
HID_MINIDRIVER_REGISTRATION La structure HID_MINIDRIVER_REGISTRATION contient les informations d’inscription qu’un minidriver HID transmet aux pilotes clients HID lorsque le minidriver s’inscrit auprès du pilote de classe. |
HID_XFER_PACKET La structure HID_XFER_PACKET dans hidclass.he contient des informations sur un rapport HID que le pilote de classe HID utilise avec les demandes d’E/S pour obtenir ou définir un rapport. |
HID_XFER_PACKET La structure HID_XFER_PACKET dans vhf.h contient des informations sur un rapport HID que le pilote de classe HID utilise avec les demandes d’E/S pour obtenir ou définir un rapport. |
HIDD_ATTRIBUTES La structure HIDD_ATTRIBUTES contient des informations sur le fournisseur d’un appareil HIDClass. |
HIDP_BUTTON_ARRAY_DATA La structure HIDP_BUTTON_ARRAY_DATA est utilisée pour obtenir ou définir des données pour un bouton unique dans un tableau de boutons. |
HIDP_BUTTON_CAPS La structure HIDP_BUTTON_CAPS contient des informations sur la capacité d’utilisation d’un bouton de contrôle HID (ou d’un ensemble de boutons associés à une plage d’utilisation). |
HIDP_CAPS La structure HIDP_CAPS contient des informations sur la fonctionnalité d’une collection de niveau supérieur. |
HIDP_COLLECTION_DESC Contient les informations d’une collection de niveau supérieur. Cette structure est utilisée dans l’appel HidP_GetCollectionDescription. |
HIDP_DATA La structure HIDP_DATA contient des informations sur l’index de données et la valeur d’un contrôle HID dans un rapport HID. |
HIDP_DEVICE_DESC Contient le bloc de description de l’appareil rempli dans les descriptions de collection sous forme de listes liées. Cette structure est utilisée par HidP_GetCollectionDescription. |
HIDP_EXTENDED_ATTRIBUTES La structure HIDP_EXTENDED_ATTRIBUTES contient des informations sur les éléments globaux spécifiés pour un contrôle HID que l’analyseur HID n’a pas reconnu. |
HIDP_GETCOLDESC_DBG Contient le code d’erreur indiquant l’échec de l’analyse du descripteur de rapport. Cette structure est utilisée dans l’appel HidP_GetCollectionDescription. |
HIDP_LINK_COLLECTION_NODE La structure HIDP_LINK_COLLECTION_NODE contient des informations sur une collection de liens dans le tableau de collection de liens d’une collection de niveau supérieur. |
HIDP_REPORT_IDS Contient des informations d’ID de rapport pour une collection de niveau supérieur. |
HIDP_UNKNOWN_TOKEN La structure HIDP_UNKNOWN_TOKEN contient des informations sur un élément global que l’analyseur HID n’a pas reconnu. |
HIDP_VALUE_CAPS La structure HIDP_VALUE_CAPS contient des informations qui décrivent la fonctionnalité d’un ensemble de valeurs de contrôle HID (une utilisation unique ou une plage d’utilisation). |
HIDSPICX_DEVICE_CONFIG En savoir plus sur : HIDSPICX_DEVICE_CONFIG |
HIDSPICX_DRIVER_GLOBALS En savoir plus sur : HIDSPICX_DRIVER_GLOBALS |
HIDSPICX_REPORT En savoir plus sur : HIDSPICX_REPORT |
INTERNAL_I8042_HOOK_KEYBOARD INTERNAL_I8042_HOOK_KEYBOARD est utilisé par I8042prt pour connecter des routines de rappel facultatives qui complètent l’initialisation du clavier et l’ISR du clavier. Les rappels peuvent être fournis par un pilote de filtre de niveau supérieur facultatif fourni par le fournisseur. |
INTERNAL_I8042_HOOK_MOUSE INTERNAL_I8042_HOOK_MOUSE est utilisé par I8042prt pour connecter une routine de rappel facultative qui complète le fonctionnement de l’ISR de la souris. Le rappel peut être fourni par un pilote de filtre de niveau supérieur facultatif fourni par le fournisseur. |
INTERNAL_I8042_START_INFORMATION INTERNAL_I8042_START_INFORMATION spécifie l’objet d’interruption qu’un pilote de périphérique de filtre de niveau supérieur facultatif fourni par le fournisseur peut utiliser pour synchroniser son fonctionnement avec un ISR I8042prt. |
OUTPUT_PACKET OUTPUT_PACKET contient des informations sur les données écrites sur un clavier ou une souris par I8042prt. |
USAGE_AND_PAGE La structure USAGE_AND_PAGE spécifie la page d’utilisation et l’ID d’utilisation d’un contrôle HID. |
VHF_CONFIG Contient les informations de configuration initiale fournies par le pilote source HID lorsqu’il appelle VhfCreate pour créer un appareil HID virtuel. |