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 von 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 Tastatureingabe an. Dieser Member 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 Extended-Key Flag .
KEYEVENTF_KEYUP
0x0002
Wenn 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 null sein. Dieses Flag kann nur mit dem flag KEYEVENTF_KEYUP kombiniert werden. Weitere Informationen finden Sie im Abschnitt mit Hinweisen.

time

Art: DWORD

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

dwExtraInfo

Typ: ULONG_PTR

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

Hinweise

INPUT_KEYBOARD unterstützt Nicht-Schlüsselboard-Eingabemethoden, z. B. die Handschrifterkennung oder Spracherkennung, als ob es sich um Texteingaben mithilfe des KEYEVENTF_UNICODE-Flags 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, sendet die Übergabe der 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 in einem ANSI-Fenster bereitgestellt wird.

Legen Sie das flag KEYEVENTF_SCANCODE fest, um tastatureingaben in Bezug auf den Scancode zu definieren. Dies ist nützlich, um einen physischen Tastenanschlag 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 den gedrückten anderen Tasten ändern, aber der Scancode ist immer gleich.

Anforderungen

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

Weitere Informationen