226

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Не знаю, у меня HID для ММ не показывает устройство, и определяет не все ММ.

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

227

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Попробуй искать другие библиотеки.
Например через interception.
http://www.oblita.com/interception.html

228

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

teadrinker А получится добавить в коллекции для мышиного хука, также как это сделано с клавиатурным, все значения из MSLLHOOKSTRUCT?
Интересует LLMHF_INJECTED, и как определить WheelRight и WheelLeft.

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

229

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Добавил.

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

230

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Спасибо.
Насчёт WheelRight и WheelLeft, теперь заметил что они относятся к WM_MOUSEHWHEEL, в отличии от WM_MOUSEWHEEL у WheelUp и WheelDown.

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

231

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Точно.

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

232

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

А у тебя клавиатура с ММ клавишами не появилась? Хотя собственно она не требуется, вопрос в том что ММ клавиши не определяются через GetKeyState, это любой может проверить, а в хуке статус есть.

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

233

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

В справке не видел про это, может в багрепорт?

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

234

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

У меня появился ноутбук, там есть несколько ММ клавиш, которые, правда, доступны только через клавишу Fn. Тем не менее у них есть свой отдельный vk. У меня так определяется:

Loop  {
   ToolTip % GetKeyState("Volume_Down")
   Sleep, 300
}

И так тоже:

Loop  {
   ToolTip % GetKeyState("vkAE")  ; Volume_Down
   Sleep, 300
}

Видимо, от клавиатуры зависит.

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

235

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

А у меня в GetKeyState всегда 0, хотя vk такой же. KeyWait не работает тоже.
Но хоткей на отпускание работает.

Volume_Down Up::MsgBox

Кстати уже забыл, по Fn скан код меняется? У меня sc12E.

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

236

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

serzh82saratov пишет:

по Fn скан код меняется?

Да, у меня меняется: Volume_Down — sc12E, без Fn та же клавиша F2 — sc3C.

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

237

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Вот и вопрос: каким образом это от клавиатуры зависит?
И ещё у тебя в хуке при нажатии LLKHF_INJECTED = 0?

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

238 (изменено: teadrinker, 2018-06-14 03:07:37)

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

serzh82saratov пишет:

Вот и вопрос: каким образом это от клавиатуры зависит?

Можно просто вопрос задать в обычном топике вопросов, не в багрепорт.

serzh82saratov пишет:

у тебя в хуке при нажатии LLKHF_INJECTED = 0?

Да, у меня 0, проверил — вроде всё правильно извлекается. У тебя не 0?

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

239

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Нет у меня у всех ММ = 1, также как если любую клавишу посылать через Send.

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

240

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

serzh82saratov, а у тебя ноутбук или простая клавиатура с виндовским драйвером?

241

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Простая клавиатура.

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

242

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

А что за модель?
PS2 или USB?

243

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

USB.
http://www.smartbuy-russia.ru/product/c … 576/17862/

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

244

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Может из-за клавиатурного драйвера такое происходит?

245 (изменено: Malcev, 2018-06-14 04:14:57)

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

И если у тебя такой код не показывает msgbox при нажатии Volume_Down

#InstallKeybdHook
Loop  {
   if getKeyState("Volume_Down")
      msgbox
}

то что тогда показывается в key history?

246

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Оказалось что мешает перманентный скрипт, при его суспенд, getKeyState начинает работать, также как и Volume_Down Up::MsgBox. Но в key history (без суспенд другого скрипта, то есть когда getKeyState  не работает) все нажатия ап даун всё равно отображаются. И как другой скрипт может перебить правило последнего хоткея.
Также не понятно, если что то с драйвером, то зачем ему может быть надо маскировать физические под эмулированные.

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

247

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

serzh82saratov пишет:

Оказалось что мешает перманентный скрипт, при его суспенд, getKeyState начинает работать, также как и Volume_Down Up::MsgBox. Но в key history (без суспенд другого скрипта, то есть когда getKeyState  не работает) все нажатия ап даун всё равно отображаются. И как другой скрипт может перебить правило последнего хоткея.

Чтобы это понять надо разбираться с обоими скриптами.

serzh82saratov пишет:

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

Автор Interception пишет, что сложно будет их отличить, а может даже и невозможно.
https://github.com/oblitum/Interception/issues/2
А если через RawInput отлавливать, тоже как эмулированныек показываются?
https://github.com/AHK-just-me/RawInput … er/Sources

248

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Разбиратся не знаю как, там многолетний мусор, но хука нет, собственно последний хоткей на других кнопках перебивает и хук.

Про RawInput по ссылке не понял, он показывает устройства только, вроде. Но, в этом коде HID_Register в II_DEVHANDLE = 0 по этим кнопкам.

#SingleInstance Force
#Persistent    
#NoEnv
ListLines Off  
SetBatchLines -1
 
AHKHID_UseConstants() 
AHKHID_Register(1, 6, A_ScriptHwnd, RIDEV_INPUTSINK)
 
OnMessage(0x00FF, "InputMsg")  ; WM_INPUT 
Return

InputMsg(wParam, lParam) {
    Local ProdName, DevHandle 
    Critical
    DevHandle := AHKHID_GetInputInfo(lParam, II_DEVHANDLE) 
    ProdName := AHKHID_GetDevName(DevHandle, True)    
	ToolTip % DevHandle "`n" AHKHID_GetInputInfo(lParam, II_KBD_VKEY) 
}

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

249

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Надо нажать правой кнопкой мыши по устройству и зарегестрировать.
Я бы попробовал с такой проблемой обратиться к evilC на оффоруме.
https://autohotkey.com/boards/viewtopic.php?t=12249
У него много всяких поделок связанных с перехватом, может подскажет чего.

250

Re: AHK: Как перехватить все перемещения мыши и все нажатия клавиш?

Malcev пишет:

Надо нажать правой кнопкой мыши по устройству и зарегестрировать.

Да, вроде разобрался, ничего не пишет по ММ.

Malcev пишет:

Я бы попробовал с такой проблемой обратиться к evilC на оффоруме.

Я бы тоже, но с гугл переводчиком, буду молча послан после 2 поста.
Но всё равно спасибо.

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