Nota
L'accés a aquesta pàgina requereix autorització. Podeu provar d'iniciar la sessió o de canviar els directoris.
L'accés a aquesta pàgina requereix autorització. Podeu provar de canviar els directoris.
Sintetiza una pulsación de tecla. El sistema puede usar este tipo de pulsación de tecla sintetizada para generar un mensaje WM_KEYUP o WM_KEYDOWN. El controlador de interrupción del controlador del teclado llama a la función keybd_event.
Sintaxis
VOID keybd_event(
[in] BYTE bVk,
[in] BYTE bScan,
[in] DWORD dwFlags,
[in] ULONG_PTR dwExtraInfo
);
Parámetros
[in] bVk
Tipo: BYTE
Un código de clave virtual. El código debe ser un valor del intervalo de 1 a 254. Para obtener una lista completa, consulte Códigos de clave virtual.
[in] bScan
Tipo: BYTE
Un código de examen de hardware para la clave.
[in] dwFlags
Tipo: DWORD
Controla varios aspectos de la operación de función. Este parámetro puede ser uno o más de los siguientes valores.
[in] dwExtraInfo
Tipo: ULONG_PTR
Valor adicional asociado al trazo de clave.
Valor devuelto
None
Observaciones
Una aplicación puede simular una pulsación de la tecla PRINTSCRN para obtener una instantánea de pantalla y guardarla en el Portapapeles. Para ello, llame a keybd_event con el parámetro bVk establecido en VK_SNAPSHOT.
Ejemplos
El siguiente programa de ejemplo alterna la luz NUM LOCK mediante keybd_event con una clave virtual de VK_NUMLOCK. Toma un valor booleano que indica si la luz debe estar desactivada (FALSE) o activada (TRUE). La misma técnica se puede usar para la tecla LOCK CAPS (VK_CAPITAL) y la tecla SCROLL LOCK (VK_SCROLL).
#include <windows.h>
void SetNumLock( BOOL bState )
{
BYTE keyState[256];
GetKeyboardState((LPBYTE)&keyState);
if( (bState && !(keyState[VK_NUMLOCK] & 1)) ||
(!bState && (keyState[VK_NUMLOCK] & 1)) )
{
// Simulate a key press
keybd_event( VK_NUMLOCK,
0x45,
KEYEVENTF_EXTENDEDKEY | 0,
0 );
// Simulate a key release
keybd_event( VK_NUMLOCK,
0x45,
KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,
0);
}
}
void main()
{
SetNumLock( TRUE );
}
Requisitos
| Requisito | Value |
|---|---|
| Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
| Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
| Plataforma de destino | Windows |
| Encabezado | winuser.h (incluir Windows.h) |
| Library | User32.lib |
| Archivo DLL | User32.dll |