76

Re: AHK: Определение виртуальных и сканкодов клавиатуры

А какие как буквы определяются?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Skype dmitry_fiveg

77 (изменено: vlad1986, 2017-12-08 17:40:10)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

F7 (поиск) определяется, как F (vk46).
F8 (Открывает Мой Компьютер) определяется, как E (vk45).
F9 (Печать) определяется, как P (vk50).

78 (изменено: serzh82saratov, 2017-12-08 12:01:18)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Так это просто они посылают сочетания клавиш Ctrl+F, Win+E, Ctrl+P, можете в ахкспай проверить. ММ клавиши тут не причём.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

79 (изменено: vlad1986, 2017-12-08 17:39:56)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

serzh82saratov

А, точно. Значит придется танцевать с бубном, чтобы их идентифицировать.

80

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Если их сканкод не определяется можно пробовать через HID.

81

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Зачем HID? Не проще на vk хоткей сделать и просто скан проверить? Но я таких случаев не видел.

Ещё в таких случаях бывает что нажатие не физическое, и если не интересуют их эмулированные, то через GetKeyState(Key, "P") проверить.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

82

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Я так понял, что у vlad1986 сканкод клавиш не определяется.

83

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Так а HID что будет узнавать?

С GetKeySC я поспешил, но можно создать два хоткея ^sc19 и ^vk50, если сработает с vk50, то скан не определился.

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

84

Re: AHK: Определение виртуальных и сканкодов клавиатуры

serzh82saratov пишет:

Так а HID что будет узнавать?

Как я понимаю, попытается отлавливать ввод через Raw Input Api.

If your key or mouse button is not detectable by the Key History screen, one of the following might help:

    Reconfigure the software that came with your mouse or keyboard (sometimes accessible in the Control Panel or Start Menu) to have the "mystery key" send some other keystroke. Such a keystroke can then be defined as a hotkey in a script. For example, if you configure a mystery key to send Control+F1, you can then indirectly make that key as a hotkey by using ^F1:: in a script.

    Try AHKHID. You can also try searching the forum for a keywords like RawInput*, USB HID or AHKHID.

    The following is a last resort and generally should be attempted only in desperation. This is because the chance of success is low and it may cause unwanted side-effects that are difficult to undo:
    Disable or remove any extra software that came with your keyboard or mouse or change its driver to a more standard one such as the one built into the OS. This assumes there is such a driver for your particular keyboard or mouse and that you can live without the features provided by its custom driver and software.

https://autohotkey.com/docs/KeyList.htm#SpecialKeys

85

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Такая клава у меня на работе, поэтому я еще не имел возможности посмотреть, что показывает AHKSpy и еще не проверял правильные ли показываются сканкоды. Проверю и отпишусь завтра (в воскресенье)

86

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Malcev пишет:

Как я понимаю, попытается отлавливать ввод через Raw Input Api.

Так когда отловит, что смотреть?

vlad1986 пишет:

посмотреть, что показывает AHKSpy

Посмотрите ещё нет ли в первой строке "Not a physical press".

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

87

Re: AHK: Определение виртуальных и сканкодов клавиатуры

serzh82saratov пишет:

Так когда отловит, что смотреть?

Не знаю. На практике данный метод использовать не приходилось.

88 (изменено: vlad1986, 2017-12-10 10:39:57)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Проблему свою понял -- наличие клавиши Fn на клавиатуре, хотя это не ноутбук.  Предварительный забег по гуглу показал, что ее средствами  Autohotkey не оседлать и даже просто не выключить. Комбинация Fn+num не работает, а отключать Fn через Биос или реестр нет возможности т.к это не домашний комп.

serzh82saratov пишет:

Посмотрите ещё нет ли в первой строке "Not a physical press".

Эту надпись показывает на всех мультимедийных клавишах, даже на тех, которые определяются правильно, например Volume_Mutte.

89

Re: AHK: Определение виртуальных и сканкодов клавиатуры

vlad1986 пишет:

Эту надпись показывает на всех мультимедийных клавишах, даже на тех, которые определяются правильно, например Volume_Mutte.

Это я знаю, на Ctrl+P показывает?

vlad1986 пишет:

Проблему свою понял -- наличие клавиши Fn на клавиатуре

Так речь же про то чтобы повесить хоткей на Ctrl+P, удостоверившись в том что она вызвана именно по F9, а не по Ctrl+P...

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

90

Re: AHK: Определение виртуальных и сканкодов клавиатуры

serzh82saratov пишет:

Это я знаю, на Ctrl+P показывает?

Да, я это и имел в виду, что проверил все клавиши, на всех показывает.

http://i100.fastpic.ru/thumb/2017/1210/f8/a808a3b395da5fa4323dd85c4d25fbf8.jpeg http://i100.fastpic.ru/thumb/2017/1210/33/0535a881062f5faf323372dbc2d56133.jpeg http://i100.fastpic.ru/thumb/2017/1210/32/7b1d71be67c703a89a7b9114106e8932.jpeg

Кроме F4 (включение-выключение микрофона) и F6 (запрашивает пароль от учетной записи). На них AHKSpy так же не реагирует т.е не пишет вообще ничего, как-будто я эти клавиши не нажимал вообще.

91 (изменено: serzh82saratov, 2017-12-10 11:55:10)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

^vk50::MsgBox    ;  "Ctrl+P" 

Так блокируется их срабатывание?

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

92

Re: AHK: Определение виртуальных и сканкодов клавиатуры

serzh82saratov

Проверю на следующей смене и отпишусь.

93 (изменено: serzh82saratov, 2017-12-10 12:49:31)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Ну если блокируется, то это по идее должно срабатывать только при F9, а Ctrl+P оставлять как есть.

#If !GetKeyState("vk50", "P")
^vk50::MsgBox F9
#If
^vk50::MsgBox Ctrl+P
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

94 (изменено: svoboden, 2017-12-11 05:30:31)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

Вроде на AHK_H можно определить мультимедийные клавиши (вот тема для обсуждения).

95 (изменено: vlad1986, 2017-12-12 17:48:35)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

serzh82saratov пишет:
^vk50::MsgBox    ;  "Ctrl+P" 

Так блокируется их срабатывание?

Да, блокируется.

serzh82saratov пишет:

Ну если блокируется, то это по идее должно срабатывать только при F9, а Ctrl+P оставлять как есть.

Срабатывает MsgBox Ctrl+P.

96

Re: AHK: Определение виртуальных и сканкодов клавиатуры

В смысле так по F9 появляется MsgBox Ctrl+P?


#If !GetKeyState("vk50", "P")
^vk50::MsgBox F9
#If
^vk50::MsgBox Ctrl+P
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

97 (изменено: vlad1986, 2017-12-12 19:59:26)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

serzh82saratov

Да, по нажатию F9.

98

Re: AHK: Определение виртуальных и сканкодов клавиатуры

А скан код какой показывает?

По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).

99 (изменено: vlad1986, 2017-12-12 20:18:09)

Re: AHK: Определение виртуальных и сканкодов клавиатуры

serzh82saratov

Скриншот, который я снимал до этого.

http://i100.fastpic.ru/thumb/2017/1210/32/7b1d71be67c703a89a7b9114106e8932.jpeg

100

Re: AHK: Определение виртуальных и сканкодов клавиатуры

А, да.
А так:


#If !GetKeyState("sc19", "P")
^vk50::MsgBox F9
#If

или так:


#If !GetKeyState("vk50", "P")
^vk50::MsgBox F9
#If
По вопросам возмездной помощи пишите письма
E-Mail: serzh82saratov@mail.ru
OS: Win7x64, AutoHotkey_L v1.1.26.01 (Unicode 32-bit).