Funcția ToAsciiEx traduce codul specificat virtual-cheie și tastatură stat corespunzătoare caracter sau caractere. Funcția traduce codul folosind limba de intrare ?i structura tastaturii fizice identificate de mânerul aspect tastatură dat.
int () ToAsciiEx UINT uVirtKey, / / virtual-cheie codeUINTuScanCode, / / scanare codulPBYTElpKeyState, / / cheie-stat arrayLPWORDlpChar, / / tampon pentru cheie traduseUINTuFlags, / / active-meniul pavilion HKLdwhkl / / keyboard layout mâner);
Bit mici, dacă setați, indică faptul că cheia este toggled pe. În această funcție, este doar de biți de comutare a tastei caps lock. Statul comutare num lock și scroll lock tastele este ignorat.
Dacă cheia specificată este o cheie mort, valoarea returnată este negativ. În caz contrar, este una din următoarele valori.
| Valoarea | Sensul |
|---|---|
| 0 | Cheia virtual specificat are nici o traducere pentru starea curentă a tastaturii. |
| 1 | Un caracter a fost copiate în zona-tampon. |
| 2 | Două caractere au fost copiate în zona-tampon. Aceasta se întâmplă de obicei când un caracter de morți-cheie (accent sau diacritică) stocate în aspect tastatură nu este compus cu tasta virtual specificate pentru a forma un singur caracter. |
Parametrii furnizate la func?ia de ToAsciiEx nu ar putea fi suficient pentru a traduce codul virtual-cheie, deoarece o cheie mort anterioare este stocat în structura tastaturii.
De obicei, ToAsciiEx efectuează traducerea bazat pe codul virtual-cheie. În unele cazuri, este cu toate acestea, pot fi utilizate pic 15 de parametrul uScanCode pentru a distinge între o apăsare de tastă și un cheie de presă. Codul de scanare este utilizat pentru traducerea ALT +tastă numerică combinații.
Deși num lock este o tastă de comutare care afectează comportamentul de tastatură, ToAsciiEx ignoră setarea de comutare (low bit) de lpKeyState (VK_NUMLOCK, deoarece parametrul uVirtKey singur este suficient pentru a distinge cheile de circulație cursorul (VK_HOME, VK_INSERT, și așa mai departe) din tastele numerice (VK_DECIMAL, VK_NUMPAD0 - VK_NUMPAD9).
nbsp; Windows &NT: necesită versiunea 4.0 sau ulterioară.
Windows:Necesită Windows 95 sau o versiune ulterioară.
Windows CE:Neacceptat.
Antet:A declarat în winuser.h.
Import Biblioteca:Utilizarea user32.lib.
Tastatură intrare prezentare generală, funcții de Input tastatură, LoadKeyboardLayout, MapVirtualKeyEx, OemKeyScan, ToAscii, VkKeyScan