Compartir a través de


Estructura KEYBDINPUT (winuser.h)

Contiene información sobre un evento de teclado simulado.

Syntax

typedef struct tagKEYBDINPUT {
  WORD      wVk;
  WORD      wScan;
  DWORD     dwFlags;
  DWORD     time;
  ULONG_PTR dwExtraInfo;
} KEYBDINPUT, *PKEYBDINPUT, *LPKEYBDINPUT;

Members

wVk

Tipo: WORD

Código de clave virtual. El código debe ser un valor del intervalo de 1 a 254. Si el miembro dwFlags especifica KEYEVENTF_UNICODE, wVk debe ser 0.

wScan

Tipo: WORD

Código de examen de hardware para la clave. Si dwFlags especifica KEYEVENTF_UNICODE, wScan especifica un carácter Unicode que se va a enviar a la aplicación en primer plano.

dwFlags

Tipo: DWORD

Especifica varios aspectos de una pulsación de tecla. Este miembro puede ser determinadas combinaciones de los valores siguientes.

Importancia Meaning
KEYEVENTF_EXTENDEDKEY
0x0001
Si se especifica, el código de examen de wScan consta de una secuencia de dos bytes, donde el primer byte tiene un valor de 0xE0. Consulta Extended-Key Marca para obtener más información.
KEYEVENTF_KEYUP
0x0002
Si se especifica, se libera la clave. Si no se especifica, se presiona la tecla .
KEYEVENTF_SCANCODE
0x0008
Si se especifica, wScan identifica la clave y wVk se omite.
KEYEVENTF_UNICODE
0x0004
Si se especifica, el sistema sintetiza una pulsación de tecla VK_PACKET. El parámetro wVk debe ser cero. Esta marca solo se puede combinar con la marca KEYEVENTF_KEYUP . Para obtener más información, vea la sección Comentarios.

time

Tipo: DWORD

Marca de tiempo del evento, en milisegundos. Si este parámetro es cero, el sistema proporcionará su propia marca de tiempo.

dwExtraInfo

Tipo: ULONG_PTR

Valor adicional asociado a la pulsación de tecla. Use la función GetMessageExtraInfo para obtener esta información.

Observaciones

INPUT_KEYBOARD admite métodos que no son de entrada del panel de claves, como el reconocimiento de escritura a mano o el reconocimiento de voz, como si fuera entrada de texto mediante la marca KEYEVENTF_UNICODE . Si se especifica KEYEVENTF_UNICODE , SendInput envía un mensaje WM_KEYDOWN o WM_KEYUP a la cola de mensajes del subproceso en primer plano con wParam igual a VK_PACKET. Una vez que GetMessage o PeekMessage obtiene este mensaje, pasando el mensaje a TranslateMessage publica un mensaje de WM_CHAR con el carácter Unicode especificado originalmente por wScan. Este carácter Unicode se convertirá automáticamente en el valor ANSI adecuado si se publica en una ventana ANSI.

Establezca la marca KEYEVENTF_SCANCODE para definir la entrada del teclado en términos del código de examen. Esto es útil para simular una pulsación de tecla física, independientemente del teclado que se esté usando actualmente. También puede pasar la marca KEYEVENTF_EXTENDEDKEY si el código de examen es una clave extendida. El valor de la tecla virtual de una tecla puede cambiar en función del diseño del teclado actual o de qué otras teclas se presionaron, pero el código de examen siempre será el mismo.

Requisitos

Requirement Importancia
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo admitido Windows 2000 Server [solo aplicaciones de escritorio]
Header winuser.h (incluya Windows.h)

Consulte también