KEYBDINPUT-Struktur (winuser.h)

Enthält Informationen zu einem simulierten Tastaturereignis

Syntax

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

Member

wVk

Typ: WORD

Ein Virtueller Schlüsselcode. Der Code muss ein Wert im Bereich 1 bis 254 sein. Wenn der dwFlags-MemberKEYEVENTF_UNICODE angibt, muss wVk 0 sein.

wScan

Typ: WORD

Ein Hardwarescancode für den Schlüssel. Wenn dwFlagsKEYEVENTF_UNICODE angibt, gibt wScan ein Unicode-Zeichen an, das an die Vordergrundanwendung gesendet werden soll.

dwFlags

Art: DWORD

Gibt verschiedene Aspekte einer Tasteneingabe an. Dieses Element kann bestimmte Kombinationen der folgenden Werte sein.

Wert Bedeutung
KEYEVENTF_EXTENDEDKEY
0x0001
Wenn angegeben, besteht der wScan-Scancode aus einer Sequenz von zwei Bytes, wobei das erste Byte den Wert 0xE0 hat. Weitere Informationen finden Sie unter Flag für erweiterten Schlüssel .
KEYEVENTF_KEYUP
0x0002
Falls angegeben, wird der Schlüssel freigegeben. Wenn nicht angegeben, wird die Taste gedrückt.
KEYEVENTF_SCANCODE
0x0008
Wenn angegeben, identifiziert wScan den Schlüssel, und wVk wird ignoriert.
KEYEVENTF_UNICODE
0x0004
Falls angegeben, synthetisiert das System eine VK_PACKET Tastenkombination. Der wVk-Parameter muss 0 sein. Dieses Flag kann nur mit dem KEYEVENTF_KEYUP-Flag kombiniert werden. Weitere Informationen finden Sie im Abschnitt mit Hinweisen.

time

Art: DWORD

Der Zeitstempel für das Ereignis in Millisekunden. Wenn dieser Parameter 0 ist, stellt das System einen eigenen Zeitstempel bereit.

dwExtraInfo

Typ: ULONG_PTR

Ein zusätzlicher Wert, der der Tasteneingabe zugeordnet ist. Verwenden Sie die GetMessageExtraInfo-Funktion , um diese Informationen abzurufen.

Hinweise

INPUT_KEYBOARD unterstützt Nicht-Schlüsselboard-Eingabemethoden wie handschriftliche Erkennung oder Spracherkennung, als ob es sich um Texteingaben mit dem KEYEVENTF_UNICODE-Flag handelt. Wenn KEYEVENTF_UNICODE angegeben ist, sendet SendInput eine WM_KEYDOWN oder WM_KEYUP Nachricht an die Nachrichtenwarteschlange des Vordergrundthreads, wobei wParamgleich VK_PACKET ist. Sobald GetMessage oder PeekMessage diese Nachricht abgerufen hat, übergibt die Nachricht an TranslateMessage eine WM_CHAR Nachricht mit dem unicode-Zeichen, das ursprünglich von wScan angegeben wurde. Dieses Unicode-Zeichen wird automatisch in den entsprechenden ANSI-Wert konvertiert, wenn es an ein ANSI-Fenster gesendet wird.

Legen Sie das Flag KEYEVENTF_SCANCODE fest, um tastatureingaben im Hinblick auf den Scancode zu definieren. Dies ist nützlich, um eine physische Tasteneingabe zu simulieren, unabhängig davon, welche Tastatur gerade verwendet wird. Sie können auch das KEYEVENTF_EXTENDEDKEY-Flag übergeben, wenn der Scancode ein erweiterter Schlüssel ist. Der Wert der virtuellen Taste einer Taste kann sich je nach aktuellem Tastaturlayout oder anderen Tasten ändern, aber der Scancode ist immer gleich.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Kopfzeile winuser.h (einschließlich Windows.h)

Weitere Informationen