Die ToAsciiEx -Funktion übersetzt die angegebene virtueller Tastencode und Tastaturstatus, bzw. die entsprechenden Zeichen. Die Funktion verschiebt den Code unter Verwendung der Eingabesprache und physische Tastaturlayout identifiziert durch das bestimmte Tastatur-Layout-handle.
Int ToAsciiEx) UINT uVirtKey, / / virtual-Key CodeUINTuScanCode, / / scan CodePBYTElpKeyState, / / Schlüssel-Staat ArrayLPWORDlpChar, / / Puffer für übersetzte SchlüsselUINTuFlags, / / Flagge aktiv-Menü HKLDwhkl / / Tastatur Layout-Handle);
Die niedrigen bit, falls gesetzt, bedeutet, dass der Schlüssel auf umgeschaltet wird. In dieser Funktion ist nur das Toggle-Bit der die Feststelltaste relevant. Der Umschaltzustand des die Num Lock und Scroll Lock Tasten wird ignoriert.
Wenn der angegebene Schlüssel ein toter Schlüssel ist, ist der Rückgabewert negativ. Ansonsten ist es einer der folgenden Werte.
Wert | Bedeutung |
---|---|
0 | Die angegebene virtuelle Taste hat keine Übersetzung für den aktuellen Zustand der Tastatur. |
1 | Ein Zeichen wurde in den Puffer kopiert. |
2 | Zwei Zeichen wurden in den Puffer kopiert. Dies geschieht normalerweise, wenn ein Toten-Schlüssel Zeichen (Akzent oder diakritisches Zeichen) in das Tastaturlayout gespeichert kann nicht mit dem angegebenen virtuellen Schlüssel bilden ein einzelnes Zeichen zusammengesetzt werden. |
Die Parametern bereitgestellt, um die ToAsciiEx -Funktion möglicherweise nicht ausreichen, um den virtuellen Schlüssel-Code übersetzen, da ein vorheriger toter Schlüssel in das Tastaturlayout gespeichert ist.
ToAsciiEx führt in der Regel die Übersetzung auf der Grundlage des virtuellen Tastencodes. In einigen Fällen kann jedoch, Bit 15 des uScanCode -Parameters zum Drücken einer Taste und eine wichtige Version unterscheiden. Der Scan-Code dient zum Übersetzen von ALT +Zahlentaste Kombinationen.
Obwohl num eine Umschalttaste die Tastaturverhalten beeinflusst ist, ToAsciiEx ignoriert die Einstellung umschalten (die niedrigen Bit) des LpKeyState (VK_NUMLOCK, da der uVirtKey -Parameter allein ausreichen, um die Cursortasten Bewegung (VK_HOME, VK_INSERT, usw.) von den numerischen Schlüsseln (VK_DECIMAL, VK_NUMPAD0 - VK_NUMPAD9) zu unterscheiden ist.
&Nbsp; Windows NT: Version 4.0 oder höher erforderlich.
Windows:Erfordert Windows 95 oder höher.
Windows CE:Nicht unterstützt.
Header:In winuser.h deklarierten.
Importieren Bibliothek:Verwenden Sie user32.lib.
Übersicht über die Tastatur-Eingabe, Keyboard Input Funktionen, LoadKeyboardLayout, MapVirtualKeyEx, OemKeyScan, ToAscii, VkKeyScan