Если тема не совсем понятна поясняю: Мне нужно с'эмулировать ввод символов в текущее мест курсора при помощи клавиши ALT+NumPad. (для тех кто не знает, если зажать клавишу Alt и ввести трихцифровой код, появится знак из ASCII таблицы). Так вот мне нужно это сделать программно.
Пробую так, но желаемого эффекта не получается.
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.SetFocus;
keybd_event(VK_MENU,0, 0, 0);
keybd_event(VK_NUMPAD3,32,0, 0);
keybd_event(VK_NUMPAD3,32,KEYEVENTF_KEYUP, 0);
keybd_event(VK_NUMPAD9,32,0, 0);
keybd_event(VK_NUMPAD9,32,KEYEVENTF_KEYUP, 0);
keybd_event(VK_NUMPAD5,32,0, 0);
keybd_event(VK_NUMPAD5,32,KEYEVENTF_KEYUP, 0);
keybd_event(vk_menu, 0, keyeventf_keyup, 0);
end;
По хорошему должна появиться русская буква "Л" (Alt+Num395),но ничего не выходит.
Может быть я что-то делаю не так, или существует какое-то аппаратное ограничение на программный ввод таким способом?