Получение символа при глобальном клавиатурном хуке
Дарова, !!!
Winamp игpaет: <Аpия - Свoбoдa>
Для получения символа, в простейшем случае, можно использовать
GetKeyNameText, но он показывает только англ. символы, да и к тому же
всегда в верхнем регистре. Как сделать так, чтоб он понимал и русские?
Я пытался делать simvol:=GetCharFromVKey(wparam), но не пашет. Видимо
виртуальный код клавиши находится не в wparam'е, а где? Или что я не
так делаю? (код GetCharFromVKey - ниже)
*-----------------------[ Начало цитирования ]function GetCharFromVKey(vkey: Word): string;
var
keystate: TKeyboardState;
retcode: Integer;
begin
Win32Check(GetKeyboardState(keystate));
SetLength(Result, 2);
retcode := ToAscii(vkey,
MapVirtualKey(vkey, 0),
keystate, @Result[1],
0);
case retcode of
0: Result := '';
1: SetLength(Result, 1);
2: ;
else
Result := '';
end;
end;
*------------------------[ Конец цитирования ]--
Всего наилучшего, Inch(tm)
Демиургам демиургово. Металлургам металлургово.
∙ До моего ДР'а осталось 60 дней.
Номер выпуска : 2345
Возраст листа : 162 (дней)
Количество подписчиков : 381
Адрес в архиве : http://subscribe.ru/archive/comp.soft.prog.prog/msg/94521
Получить правила : mailto:comp.soft.prog.prog-rules@subscribe.ru
Формат "дайджест" : mailto:comp.soft.prog.prog-digest@subscribe.ru
Формат "каждое письмо" : mailto:comp.soft.prog.prog-normal@subscribe.ru
Формат "читать с веба" : mailto:comp.soft.prog.prog-webonly@subscribe.ru
-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: mailto:comp.soft.prog.prog--unsub@subscribe.ru
http://subscribe.ru/ mailto:ask@subscribe.ru