Condividi tramite


struttura KEYBOARD_EXTENDED_ATTRIBUTES (ntddkbd.h)

KEYBOARD_EXTENDED_ATTRIBUTES specifica gli attributi estesi di una tastiera.

Sintassi

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;

Members

Version

Tipo: UCHAR

Versione di questa struttura.

Sono supportati solo KEYBOARD_EXTENDED_ATTRIBUTES_STRUCT_VERSION_1 .

FormFactor

Tipo: UCHAR

Fattore di forma della tastiera (ID utilizzo: 0x2C1).

Valore Descrizione
0x00 Fattore di forma sconosciuto.
0x01 Tastiera full-size.
0x02 Tastiera compatta. Tali tastiere sono inferiori a 13" di larghezza.

KeyType

Tipo: UCHAR

Tipo di tasto tastiera (ID utilizzo: 0x2C2).

Valore Descrizione
0x00 Tipo di chiave sconosciuto.
0x01 Chiavi full-travel.
0x02 Tasti di spostamento bassi, ad esempio quelli su tastiere portatili.
0x03 Zero-travel o chiavi virtuali.

PhysicalLayout

Tipo: UCHAR

Layout fisico della tastiera (ID utilizzo: 0x2C3).

Valore Descrizione
0x00 Layout sconosciuto
0x01 101 (ad esempio, Stati Uniti)
0x02 103 (Corea)
0x03 102 (ad esempio, tedesco)
0x04 104 (ad esempio, ABNT Brasile)
0x05 106 (DOS/V Giappone)
0x06 Vendor^specific: se specificato, è necessario specificare anche VendorSpecificPhysicalLayout .

Questo valore non fa riferimento al set di legenda stampato sulle chiavi, ma solo al layout del keyset fisico, definito dalla posizione relativa e dalla forma delle chiavi testuali in relazione tra loro. Questo valore indica quale dei layout fisici standard de facto è conforme alla tastiera. Questi layout sono comunemente compresi.

VendorSpecificPhysicalLayout

Tipo: UCHAR

Identificatore numerico del layout fisico della tastiera specifico del fornitore (ID utilizzo: 0x2C4).

I valori per questo campo sono definiti dal fornitore dell'hardware, ma 0x00 è definito per non specificare un layout fisico della tastiera specifico del fornitore. Se diverso da zero, PhysicalLayout deve avere valore 0x06. Se questo identificatore è 0x00, PhysicalLayout non deve avere il valore 0x06.

IETFLanguageTagIndex

Tipo: UCHAR

Indice stringa di un descrittore stringa con un tag di lingua IETF (ID utilizzo: 0x2C5).

La stringa effettiva può essere ottenuta tramite IOCTL_HID_GET_INDEXED_STRING IOCTL nei driver in modalità kernel o HidD_GetIndexedString chiamare nelle applicazioni in modalità utente.

Questo tag di lingua specifica le impostazioni locali primarie desiderate del set di legende della tastiera, conformi a IETF BCP 47 o al suo successore.

Se non è disponibile un tag di lingua IETF appropriato, ad esempio per layout personalizzati, adattivi o nuovi, il valore viene impostato su 0x00.

ImplementedInputAssistControls

Tipo: UCHAR

Bitmap per i controlli di input di input implementati fisicamente. (ID utilizzo: 0x2C6).

bit Descrizione
Tutti 0 Non vengono implementati controlli Input Assist da tastiera.
Bit 0 Suggerimento precedente
Bit 1 Suggerimento successivo
Bit 2 Gruppo di suggerimenti precedente
Bit 3 Gruppo di suggerimenti successivo
Bit 4 Accetta suggerimento
Bit 5 Annulla suggerimento
Tutti gli altri bit riservati.

Commenti

Questa struttura viene utilizzata con una richiesta di IOCTL_KEYBOARD_QUERY_EXTENDED_ATTRIBUTES per restituire informazioni sugli attributi estesi supportati da una tastiera.

Queste informazioni provengono dal descrittore di report di tastiera HID descritto in HiD Usage Table Review Request 42: Consumer Page Keyboard Assist Controls.This information from HID Keyboard Report Descriptor described in HID Usage Table Review Request 42: Consumer Page Keyboard Assist Controls.

Requisiti

Requisito Valore
Intestazione ntddkbd.h (include Ntddkbd.h)

Vedi anche

IOCTL_KEYBOARD_QUERY_EXTENDED_ATTRIBUTES

IOCTL_KEYBOARD_QUERY_ATTRIBUTES

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