Форум: "Система";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];
ВнизКлавиатура как в Досе. Найти похожие ветки
← →
sniknik (2002-11-21 22:51) [0]Необходимо (мне) обрабатавать нажатие на клавиши, но сами они не нажимаются а эмулируются устройством в разрыв клавиатуры (сканер штрихкодов).
В досе все хорошо то что он посылает то получается, а вот в виндах проблема (по крайней мере для меня) получаю не те силволы :(. Посылается символ со скан кодом 2 (два), в дос так и принимается (по Readkey) в виндах вместо него сканкод 17 + сканкод 86, точно не помню но то же сочетание что дает Ctrl+b, вплоть до флагов (событие onKeyDown).
Вопрос возможно в виндах получить значение точно такоеже какое дает в досе? И каким способом?
если в этом случае 2=Ctrl+b еще может прокатить за "фенечку" то в случае с 0 в расширенных кодах вообще нет значения (а оно мне оченно нужно), получается 0+81 в дос = 46 в виндах (а это точка! часто встречается)
заранее извиняюсь, если обсуждение затянется до завтра то завтра у меня инета не будет скорее всего :((.
← →
sniknik (2002-11-23 13:36) [1]Похоже не решается.
Пробовал через LParam (в хуке, в MSDN нашол что передается скан код 16-23 биты) но проблема осталась т.к. там именно клавиатурные коды, коды клавиш (ESC=1, F1=59 и т.д) тут значения тоже пересекаются.
Можно еще посмотреть в комбинации, но вряд ли (так можно подобрать только для под конкретный сканер универсальности не получится), нужно чтонибудь с самими сканерами делать :(. Либо опускатся до клавиатурного драйвера а это гораздо сложнее.
← →
LordOfSilence (2002-11-25 10:05) [2]Delphi->Help->Windows SDK->MapVirtualKey()?
← →
sniknik (2002-11-25 12:43) [3]Пробовал, при MapType = 0 возврашает теже скан коды что в LParam[16..23], в других случаях преобразует в те же значения. ну в смысле если мое значение -2- драйвером преобразуется в -Ctrl+b- то дальше они совершенно однозначны и при MapType = 1 оба преобразуются в -119-.
и потом очень много кодов нетранслируемых, возврашается 0, а у меня это нормальное значение. :-((
← →
Андрей Ваганов (2002-11-25 13:19) [4]Есть вариант еспользовать TEdit(получишь то, что сканишь) далее используй по назначению. Edit можно замутить невидимым.
...тупо, но способ! :)
← →
sniknik (2002-11-25 15:06) [5]Андрей Ваганов (25.11.02 13:19)
вообще не способ. без разницы у какого компонента onKeyUp срабатывает.
попробуй к примеру получить нажатием на клавиши там значек кода 2 -
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c