Partager via


structure KEYBOARD_EXTENDED_ATTRIBUTES (ntddkbd.h)

KEYBOARD_EXTENDED_ATTRIBUTES spécifie les attributs étendus d’un clavier.

Syntaxe

typedef struct _KEYBOARD_EXTENDED_ATTRIBUTES {
  UCHAR Version;
  UCHAR FormFactor;
  UCHAR KeyType;
  UCHAR PhysicalLayout;
  UCHAR VendorSpecificPhysicalLayout;
  UCHAR IETFLanguageTagIndex;
  UCHAR ImplementedInputAssistControls;
} KEYBOARD_EXTENDED_ATTRIBUTES, *PKEYBOARD_EXTENDED_ATTRIBUTES;

Membres

Version

Type : UCHAR

Version de cette structure.

Seules KEYBOARD_EXTENDED_ATTRIBUTES_STRUCT_VERSION_1 prises en charge.

FormFactor

Type : UCHAR

Facteur de forme du clavier (ID d’utilisation : 0x2C1).

Valeur Description
0x00 Facteur de forme inconnu.
0x01 Clavier pleine taille.
0x02 Clavier compact. Ces claviers ont moins de 13 pouces de large.

KeyType

Type : UCHAR

Type de touche clavier (ID d’utilisation : 0x2C2).

Valeur Description
0x00 Type de clé inconnu.
0x01 Clés de voyage complètes.
0x02 Touches de déplacement faible telles que celles des claviers d’ordinateur portable.
0x03 Clés virtuelles ou de déplacement zéro.

PhysicalLayout

Type : UCHAR

Disposition physique du clavier (ID d’utilisation : 0x2C3).

Valeur Description
0x00 Disposition inconnue
0x01 101 (par exemple, États-Unis)
0x02 103 (Corée)
0x03 102 (par exemple, allemand)
0x04 104 (par exemple, ABNT Brésil)
0x05 106 (DOS/V Japon)
0x06 Spécifique au fournisseur : si spécifié, VendorSpecificPhysicalLayout doit également être spécifié.

Cette valeur ne fait pas référence au jeu de légendes imprimé sur les clés, mais uniquement à la disposition physique du jeu de clés, définie par l’emplacement relatif et la forme des clés textuelles les unes par rapport aux autres. Cette valeur indique laquelle des dispositions physiques standard de facto auxquelles le clavier est conforme. Ces dispositions sont couramment comprises.

VendorSpecificPhysicalLayout

Type : UCHAR

Identificateur numérique de la disposition physique du clavier spécifique au fournisseur (ID d’utilisation : 0x2C4).

Les valeurs de ce champ sont définies par le fournisseur de matériel, mais 0x00 est défini pour ne pas spécifier une disposition physique du clavier spécifique au fournisseur. Si la valeur n’est pas égale à zéro, PhysicalLayout doit avoir une valeur 0x06. Si cet identificateur est 0x00, PhysicalLayout ne doit pas avoir la valeur 0x06.

IETFLanguageTagIndex

Type : UCHAR

Index de chaîne d’un descripteur de chaîne avec une balise de langue IETF (ID d’utilisation : 0x2C5).

La chaîne réelle peut être obtenue via IOCTL_HID_GET_INDEXED_STRING IOCTL dans les pilotes en mode noyau ou HidD_GetIndexedString appel dans les applications en mode utilisateur.

Cette balise de langue spécifie les paramètres régionaux principaux prévus du jeu de légendes de clavier, conformes à l’IETF BCP 47 ou à son successeur.

Si une balise de langue IETF appropriée n’est pas disponible, par exemple pour les dispositions personnalisées, adaptatives ou nouvelles, la valeur est définie sur 0x00.

ImplementedInputAssistControls

Type : UCHAR

Bitmap pour les contrôles d’assistance d’entrée implémentés physiquement. (ID d’utilisation : 0x2C6).

bit Description
Tous les 0 Aucun contrôle d’aide à l’entrée du clavier n’est implémenté.
Bit 0 Suggestion précédente
Bit 1 Suggestion suivante
Bit 2 Groupe de suggestions précédent
Bit 3 Groupe de suggestions suivant
Bit 4 Accepter la suggestion
Bit 5 Annuler la suggestion
Tous les autres bits réservés.

Remarques

Cette structure est utilisée avec une demande de IOCTL_KEYBOARD_QUERY_EXTENDED_ATTRIBUTES pour retourner des informations sur les attributs étendus pris en charge par un clavier.

Ces informations proviennent du descripteur de rapport de clavier HID décrit dans HID Usage Table Review Request 42 : Consumer Page Keyboard Assist Controls.

Configuration requise

Condition requise Valeur
En-tête ntddkbd.h (incluez Ntddkbd.h)

Voir aussi

IOCTL_KEYBOARD_QUERY_EXTENDED_ATTRIBUTES

IOCTL_KEYBOARD_QUERY_ATTRIBUTES

HID Usage Table Review Request 42: Consumer Page Keyboard Assist Controls