estructura KEYBOARD_EXTENDED_ATTRIBUTES (ntddkbd.h)
KEYBOARD_EXTENDED_ATTRIBUTES especifica los atributos extendidos de un teclado.
Sintaxis
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;
Miembros
Version
Tipo: UCHAR
Versión de esta estructura.
Solo se admiten KEYBOARD_EXTENDED_ATTRIBUTES_STRUCT_VERSION_1 .
FormFactor
Tipo: UCHAR
Factor de forma de teclado (id. de uso: 0x2C1).
Valor | Descripción |
---|---|
0x00 | Factor de forma desconocido. |
0x01 | Teclado de tamaño completo. |
0x02 | Teclado compacto. Estos teclados tienen menos de 13" de ancho. |
KeyType
Tipo: UCHAR
Tipo de tecla de teclado (id. de uso: 0x2C2).
Valor | Descripción |
---|---|
0x00 | Tipo de clave desconocido. |
0x01 | Llaves de viaje completas. |
0x02 | Teclas de desplazamiento bajo, como las que están en teclados portátiles. |
0x03 | Desplazamiento cero o claves virtuales. |
PhysicalLayout
Tipo: UCHAR
Diseño físico del teclado (id. de uso: 0x2C3).
Valor | Descripción |
---|---|
0x00 | Diseño desconocido |
0x01 | 101 (por ejemplo, EE. UU.) |
0x02 | 103 (Corea) |
0x03 | 102 (por ejemplo, alemán) |
0x04 | 104 (por ejemplo, ABNT Brasil) |
0x05 | 106 (DOS/V Japón) |
0x06 | Específico del proveedor: si se especifica, también se debe especificar VendorSpecificPhysicalLayout . |
Este valor no hace referencia al conjunto de leyendas impreso en las claves, sino solo al diseño del conjunto de claves físico, definido por la ubicación relativa y la forma de las claves textuales en relación entre sí. Este valor indica cuál de los diseños físicos estándar de facto a los que se ajusta el teclado. Estos diseños se suelen entender.
VendorSpecificPhysicalLayout
Tipo: UCHAR
Identificador numérico del diseño físico del teclado específico del proveedor (id. de uso: 0x2C4).
Los valores de este campo se definen mediante el proveedor de hardware, pero 0x00 se define para no especificar un diseño físico de teclado específico del proveedor. Si no es cero, PhysicalLayout debe tener el valor 0x06. Si este identificador es 0x00, PhysicalLayout no debe tener el valor 0x06.
IETFLanguageTagIndex
Tipo: UCHAR
Índice de cadena de un descriptor de cadena que tiene una etiqueta de idioma IETF (id. de uso: 0x2C5).
La cadena real se puede obtener a través de IOCTL_HID_GET_INDEXED_STRING IOCTL en controladores en modo kernel o HidD_GetIndexedString llamada en aplicaciones en modo de usuario.
Esta etiqueta de idioma especifica la configuración regional principal prevista del conjunto de leyendas del teclado, conforme a IETF BCP 47 o a su sucesor.
Si una etiqueta de idioma IETF adecuada no está disponible, como para diseños personalizados, adaptables o nuevos, el valor se establece en 0x00.
ImplementedInputAssistControls
Tipo: UCHAR
Mapa de bits para controles de asistencia de entrada implementados físicamente. (Id. de uso: 0x2C6).
bit | Descripción |
---|---|
Todos los 0 | No se implementan controles De asistencia de entrada de teclado. |
Bit 0 | Sugerencia anterior |
Bit 1 | Sugerencia siguiente |
Bit 2 | Grupo de sugerencias anteriores |
Bit 3 | Siguiente grupo de sugerencias |
Bit 4 | Aceptar sugerencia |
Bit 5 | Cancelar sugerencia |
Todos los demás bits reservados. |
Comentarios
Esta estructura se usa con una solicitud de IOCTL_KEYBOARD_QUERY_EXTENDED_ATTRIBUTES para devolver información sobre los atributos extendidos que admite un teclado.
Esta información procede del descriptor de informe de teclado HID descrito en SOLICITUD de revisión de tabla de uso hid 42: controles de asistencia para teclado de página de consumidor.
Requisitos
Requisito | Valor |
---|---|
Header | ntddkbd.h (include Ntddkbd.h) |
Consulte también
IOCTL_KEYBOARD_QUERY_EXTENDED_ATTRIBUTES