Мультимедийная клавиатура

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Мультимедийная клавиатура

Сообщение E'rsh » 27.01.2006 (Пт) 12:17

Всем здоров!

Вопрос таков...
Можно ли заменить функции на м/м клаве (дополнит кнопки) на свои.
Я понимаю что все проходит через драйвер, но может его можно подправить или как нибудь по другому.

Буду рад любому ответу (кроме ищи в "yandex", или на форуме)
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

Fil
Обычный пользователь
Обычный пользователь
 
Сообщения: 61
Зарегистрирован: 23.01.2006 (Пн) 14:17

Сообщение Fil » 27.01.2006 (Пт) 12:41

Конечно можно, а как по твой-му драйвер написали. Можно так: нажать на дополнительную клавишу и посмотреть её код, а потом через этот код, прописываешь, что хочешь. Только, когда драйвер на клаву стоит, её код нужно обнулять.

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 27.01.2006 (Пт) 12:49

Fil

Эти клавиши дополнительные и не имеют общественных кодов (H20=Space).
Подробнее можно?
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

Fil
Обычный пользователь
Обычный пользователь
 
Сообщения: 61
Зарегистрирован: 23.01.2006 (Пн) 14:17

Сообщение Fil » 27.01.2006 (Пт) 12:58

Когда стоит драйвер на клаву, то, когда их тискаешь всплывает код. Попробуй.

Fil
Обычный пользователь
Обычный пользователь
 
Сообщения: 61
Зарегистрирован: 23.01.2006 (Пн) 14:17

Сообщение Fil » 27.01.2006 (Пт) 12:59

Допустим, у меня на выключени компа код -255

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 27.01.2006 (Пт) 13:37

Fil

А чем ты их ловишь?
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

Fil
Обычный пользователь
Обычный пользователь
 
Сообщения: 61
Зарегистрирован: 23.01.2006 (Пн) 14:17

Сообщение Fil » 27.01.2006 (Пт) 14:38

Да, допустим, через Form_Keydown пишешь Me.caption = Keycode

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 27.01.2006 (Пт) 15:30

Fil

Нет.
Нажимаю на Copy (на клаве) он отлавливает код копирования т.е. Ctrl+C
Нажимаю на Back (для Explorer или др.) вообще не реагирует.
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

Fil
Обычный пользователь
Обычный пользователь
 
Сообщения: 61
Зарегистрирован: 23.01.2006 (Пн) 14:17

Сообщение Fil » 27.01.2006 (Пт) 15:46

Как KeyCode может отловить Ctrl+C? Он возвращает значение Integer!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 27.01.2006 (Пт) 15:50

А ctrl+c это не integer? :roll:
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 27.01.2006 (Пт) 15:52

Fil

Ну я говорю образно...
Он поймал код 17 потом 67
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 27.01.2006 (Пт) 15:57

GSerg

:evil: Перечитай топик
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

Fil
Обычный пользователь
Обычный пользователь
 
Сообщения: 61
Зарегистрирован: 23.01.2006 (Пн) 14:17

Сообщение Fil » 27.01.2006 (Пт) 16:09

А-а-а это у тебя такая галимая клава с подставкой под руки чёрно-серая, и клавиши вставки, копирования, вырезания - сбоку?

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 27.01.2006 (Пт) 18:56

Fil

1. Давай не будем переходить на.....

2. Гов_о не держим...

3. Тему топика видел? Есть, чем помочь - давай, а нет - крестик в верхнем правом углу окна!
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

RUSYA
Обычный пользователь
Обычный пользователь
 
Сообщения: 84
Зарегистрирован: 22.07.2005 (Пт) 20:17
Откуда: Харьков

Сообщение RUSYA » 27.01.2006 (Пт) 20:58

найди примерчик хука клавы, там коды тож показуются...
А как оно на самом деле - Х.З. !

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 27.01.2006 (Пт) 21:05

RUSYA
Я ранее уже поднимал этот вопрос, но ничего...
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

Fil
Обычный пользователь
Обычный пользователь
 
Сообщения: 61
Зарегистрирован: 23.01.2006 (Пн) 14:17

Сообщение Fil » 28.01.2006 (Сб) 12:53

По F2 посмотри, вроде - есть в ВБ нэте точно описаны все доп. клавиши и их значение... и не надо так обижаться :)

AiLEX
Новичок
Новичок
 
Сообщения: 30
Зарегистрирован: 18.09.2005 (Вс) 11:44
Откуда: Котлас

Сообщение AiLEX » 28.01.2006 (Сб) 14:06

E'rsh
Я тоже когда то подобное делал. Мне кажется, что в данном случае, лучше всего отлавливать дополнительные клавиши через DirectInput в DirectX. И ни какие Ctrl+C он возвращать не будет, у него вообще другие коды на все клавиши. Во всяком случае это мое мнение...

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 28.01.2006 (Сб) 16:03

Fil писал(а):По F2 посмотри, вроде - есть в ВБ нэте точно описаны все доп. клавиши и их значение...

ты не понимаешь проблемы. Драйвер не возврещает особый код клавиши, а спосылает "Ctrl+C" (это притивным языком)

Fil писал(а):и не надо так обижаться

Я не обижался, а :twisted: Не люблю когда не стого не сего и в грязь
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 28.01.2006 (Сб) 16:06

AiLEX
А как этим пользоваться?
(хотелось бы пример)
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

Fil
Обычный пользователь
Обычный пользователь
 
Сообщения: 61
Зарегистрирован: 23.01.2006 (Пн) 14:17

Сообщение Fil » 28.01.2006 (Сб) 16:19

Для сочетаний клавиш, пример через Кейцоде не подходит... - это факт! Зато для одиночных - работает неплохо.

AiLEX
Новичок
Новичок
 
Сообщения: 30
Зарегистрирован: 18.09.2005 (Вс) 11:44
Откуда: Котлас

Сообщение AiLEX » 28.01.2006 (Сб) 17:12

Вот, пожалуйста. На моей клаве отслеживает все клавиши на ура. Разве что юзается DirectX 7, но без него не знаю как еще можно сделать.
Вложения
DInput.zip
(1.8 Кб) Скачиваний: 25

E'rsh
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 111
Зарегистрирован: 12.06.2005 (Вс) 13:52
Откуда: Калининград

Сообщение E'rsh » 28.01.2006 (Сб) 17:31

AiLEX
Не помогло... :cry:
Такой же эффект, что и с "Form_KeyDown"
Нельзя предугадать действие дураков, поскольку они крайне изобретательны.

AiLEX
Новичок
Новичок
 
Сообщения: 30
Зарегистрирован: 18.09.2005 (Вс) 11:44
Откуда: Котлас

Сообщение AiLEX » 28.01.2006 (Сб) 22:22

Значит так задумано в драйвере (в драйвере прерываний), а этот драйвер, на сколько я знаю, что-то типа обычного приложения в формате *.sys , в блокноте там явно ни что не поменять.
Посмотри, может в интернете есть какие-нибудь еще драйвера (но вряд ли)

drronnie
Постоялец
Постоялец
 
Сообщения: 793
Зарегистрирован: 04.03.2002 (Пн) 22:29
Откуда: Украина, Алчевск

Сообщение drronnie » 29.01.2006 (Вс) 14:44

Есть программа ЕКА, так вот она отлавливала даже нажатия на клаве SVEN, где все клавиши возвращали код 255.
вот кусочек из пресета:
[Preset0]
ExtKey.ModKeys.mkShift=0
ExtKey.ModKeys.mkAlt=0
ExtKey.ModKeys.mkControl=0
ExtKey.ModKeys.mkWin=0
ExtKey.VirtualKeyCode=174
ExtKey.ScanCode=46
ExtKey.isExtendedKey=1
ExtKey.altIsDown=0
ExtKey.Name=Volume -
Action=31
Pass2Next=0
Plugin=Volume
PluginValue=1001
EmulAR=0
ARDelay=0
ARFreq=0

Так вот там есть ВиртуалКод и СканКод, и на клаве свен он их различал по сканкоду....

Я пробовал когда-то через TVich помоему так называется.... драйвер и слушал через прерывание клавиатуры, так вот там возвращался сканкод.....
Компиляция - перевод словесного поноса в машинный код.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

    TopList  
cron