Mahou: [Bug] Global hooks stopped

Created on 20 Apr 2017  ·  65Comments  ·  Source: BladeMight/Mahou

1. Summary

В случаях, описанных в секции 3, Mahou прекращает свою работу: смены раскладок не происходит. Рестарт Mahou разрешает проблему.

Возможно, связанный вопрос.

2. Settings

  1. Для фиксирования времени, когда происходит актуальное поведение, пользуюсь Nastynate.
  2. Для логирования пользуюсь программой KateLogger. Это KeypressOSD с той разницей, что нажатия клавиш заносятся в лог, а не отображаются на экране. Должны записываться все клики мышью и шорткаты, на практике записывается не всё.
  3. Список моих программ см. здесь.
  4. Пользуюсь многочисленными AutoHotkey скриптами. Привожу те некоторые, которые, возможно, имеют отношение к актуальному поведению.
; Right Alt as Alt
RAlt::Alt
; Disable LWin
~LWin Up::return
; Win + <kbd>Numpad8</kbd> — —
#sc048::send {U+2014}

И скрипты, как в Вашем ответе:

; <kbd>Ctrl+Alt+Shift+Win+F10</kbd> = Win+Alt+D = Run Python Interpteter
!#d::
Send {ALT up}
Send {WIN up}
Send {D up}
Send !^+#{F10}
return
; <kbd>Ctrl+Alt+Shift+Win+F11</kbd> = Win+, = Run Pomodoro
#,::
Send {WIN up}
Send {, up}
Send !^+#{F11}
return
; <kbd>Ctrl+Alt+Shift+Win+F12</kbd> = Win+Space = Python Repl Current File
#Space::
Send {WIN up}
Send {Space up}
Send !^+#{F12}
return

3. Steps to reproduce

1. Баг первый

Не могу понять причины. я работаю, обычно делая конвертацию линии, → в какой-то момент Mahou перестаёт работать.

  • Mon Apr 17 14:42:56 2017
17/04/2017 14:42:08 - LButton - 182 x 481
17/04/2017 14:42:09 - Enter
17/04/2017 14:42:09 - Enter
17/04/2017 14:42:11 - 
17/04/2017 14:42:11 - Shift ( * 2 )
17/04/2017 14:42:11 - Shift ( * 3 )
17/04/2017 14:42:11 - Shift ( * 4 )
17/04/2017 14:42:11 - Shift ( * 5 )
17/04/2017 14:42:11 - Shift ( * 6 )
17/04/2017 14:42:11 - Shift ( * 7 )
17/04/2017 14:42:12 - Shift ( * 8 )
17/04/2017 14:42:12 - Shift ( * 9 )
17/04/2017 14:42:12 - Shift ( * 10 )
17/04/2017 14:42:12 - Shift ( * 11 )
17/04/2017 14:42:12 - Shift ( * 12 )
17/04/2017 14:42:12 - Shift ( * 13 )
17/04/2017 14:42:12 - Shift ( * 14 )
17/04/2017 14:42:12 - Shift ( * 15 )
17/04/2017 14:42:12 - Shift ( * 16 )
17/04/2017 14:42:12 - Shift ( * 17 )
17/04/2017 14:42:12 - Shift ( * 18 )
17/04/2017 14:42:12 - Shift ( * 19 )
17/04/2017 14:42:12 - Shift ( * 20 )
17/04/2017 14:42:12 - Shift ( * 21 )
17/04/2017 14:42:12 - Shift ( * 22 )
17/04/2017 14:42:12 - Shift ( * 23 )
17/04/2017 14:42:12 - Shift ( * 24 )
17/04/2017 14:42:12 - Shift ( * 25 )
17/04/2017 14:42:12 - Shift ( * 26 )
17/04/2017 14:42:12 - Shift ( * 27 )
17/04/2017 14:42:12 - Shift ( * 28 )
17/04/2017 14:42:12 - Shift ( * 29 )
17/04/2017 14:42:20 - 
17/04/2017 14:42:20 - Shift ( * 2 )
17/04/2017 14:42:20 - Shift + b
17/04/2017 14:42:20 - o
17/04/2017 14:42:20 - o
17/04/2017 14:42:22 - k
17/04/2017 14:42:23 - 
17/04/2017 14:42:23 - Shift ( * 2 )
17/04/2017 14:42:23 - Shift ( * 3 )
17/04/2017 14:42:23 - Shift ( * 4 )
17/04/2017 14:42:23 - Shift ( * 5 )
17/04/2017 14:42:23 - Shift ( * 6 )
17/04/2017 14:42:23 - Shift + [
17/04/2017 14:42:24 - 
17/04/2017 14:42:24 - <kbd>Ctrl</kbd> ( * 2 )
17/04/2017 14:42:24 - <kbd>Ctrl</kbd> ( * 3 )
17/04/2017 14:42:24 - <kbd>Ctrl</kbd> ( * 4 )
17/04/2017 14:42:24 - <kbd>Ctrl</kbd> + z
17/04/2017 14:42:25 - 
17/04/2017 14:42:26 - Shift ( * 2 )
17/04/2017 14:42:26 - Shift ( * 3 )
17/04/2017 14:42:26 - Shift ( * 4 )
17/04/2017 14:42:26 - Shift ( * 5 )
17/04/2017 14:42:26 - Shift ( * 6 )
17/04/2017 14:42:26 - Shift ( * 7 )
17/04/2017 14:42:26 - Shift ( * 8 )
17/04/2017 14:42:26 - Shift ( * 9 )
17/04/2017 14:42:26 - Shift ( * 10 )
17/04/2017 14:42:26 - Shift ( * 11 )
17/04/2017 14:42:26 - Shift ( * 12 )
17/04/2017 14:42:26 - Shift ( * 13 )
17/04/2017 14:42:26 - Shift ( * 14 )
17/04/2017 14:42:26 - Shift ( * 15 )
17/04/2017 14:42:26 - Shift ( * 16 )
17/04/2017 14:42:26 - Shift ( * 17 )
17/04/2017 14:42:26 - Shift ( * 18 )
17/04/2017 14:42:26 - Shift ( * 19 )
17/04/2017 14:42:26 - Shift ( * 20 )
17/04/2017 14:42:26 - Shift ( * 21 )
17/04/2017 14:42:26 - Shift ( * 22 )
17/04/2017 14:42:26 - Shift ( * 23 )
17/04/2017 14:42:26 - Shift ( * 24 )
17/04/2017 14:42:26 - Shift ( * 25 )
17/04/2017 14:42:26 - Shift ( * 26 )
17/04/2017 14:42:26 - Shift ( * 27 )
17/04/2017 14:42:26 - Shift ( * 28 )
17/04/2017 14:42:26 - Shift ( * 29 )
17/04/2017 14:42:27 - Shift ( * 30 )
17/04/2017 14:42:27 - Shift ( * 31 )
17/04/2017 14:42:27 - Shift ( * 32 )
17/04/2017 14:42:27 - Shift ( * 33 )
17/04/2017 14:42:27 - Shift ( * 34 )
17/04/2017 14:42:27 - Shift ( * 35 )
17/04/2017 14:42:27 - Shift ( * 36 )
17/04/2017 14:42:27 - Shift ( * 37 )
17/04/2017 14:42:27 - Shift ( * 38 )
17/04/2017 14:42:27 - Shift ( * 39 )
17/04/2017 14:42:27 - Shift ( * 40 )
17/04/2017 14:42:27 - Shift ( * 41 )
17/04/2017 14:42:27 - Shift ( * 42 )
17/04/2017 14:42:27 - Shift ( * 43 )
17/04/2017 14:42:27 - Shift ( * 44 )
17/04/2017 14:42:27 - Shift ( * 45 )
17/04/2017 14:42:27 - Shift ( * 46 )
17/04/2017 14:42:27 - Shift ( * 47 )
17/04/2017 14:42:27 - Shift + 6
17/04/2017 14:42:28 - BackSpace
17/04/2017 14:42:28 - 
17/04/2017 14:42:28 - Shift + ;
17/04/2017 14:42:29 - Space
17/04/2017 14:42:29 - 
17/04/2017 14:42:29 - Alt + Tab
17/04/2017 14:42:40 - 
17/04/2017 14:42:40 - Alt + Tab
17/04/2017 14:42:42 - c
17/04/2017 14:42:42 - Space
17/04/2017 14:42:42 - 6
17/04/2017 14:42:43 - 3
17/04/2017 14:42:44 - BackSpace
17/04/2017 14:42:44 - BackSpace
17/04/2017 14:42:44 - BackSpace
17/04/2017 14:42:45 - .
17/04/2017 14:42:46 - Space
17/04/2017 14:42:46 - 6
17/04/2017 14:42:46 - 3
17/04/2017 14:42:47 - Space
17/04/2017 14:42:47 - LWin
17/04/2017 14:42:48 - Space
17/04/2017 14:42:48 - d
17/04/2017 14:42:48 - t
17/04/2017 14:42:49 - h
17/04/2017 14:42:49 - t
17/04/2017 14:42:49 - BackSpace
17/04/2017 14:42:49 - BackSpace
17/04/2017 14:42:49 - BackSpace
17/04/2017 14:42:49 - BackSpace
17/04/2017 14:42:49 - CapsLock
17/04/2017 14:42:50 - d
17/04/2017 14:42:50 - t
17/04/2017 14:42:50 - h
17/04/2017 14:42:50 - BackSpace
17/04/2017 14:42:50 - BackSpace
17/04/2017 14:42:51 - BackSpace
17/04/2017 14:42:51 - CapsLock
17/04/2017 14:42:56 - 
17/04/2017 14:42:56 - LWin + Numpad2

В момент, когда я фиксирую время бага, Mahou уже не записывает логи. То же самое происходит и в остальных четырёх случаях.

01:13:04.193 [Info]
                    Last word & words cleared [with mouse click].
01:13:04.911 [Info]
                    Last word & words cleared [with mouse click].
01:13:11.451 [Info]
                    Last word & words cleared [with mouse click].
01:13:12.953 [Info]
                    Catched Key=[Delete] with VKCode=[46] and message=[256], modifiers=[Shift].
02:43:09.668 [Info]
                    Locales for ALL comboboxes refreshed.
02:43:09.773 [Info]
                    Hotkeys initialized.
02:43:09.797 [Info]
                    Language changed.
02:43:09.809 [Info]
                    All configurations loaded.
02:43:09.838 [Info]
                    Global hooks started.
02:43:09.889 [Info]
                    Last word & words cleared [with mouse click].
02:43:10.959 [Info]
                    Catched Key=[Capital] with VKCode=[20] and message=[256], modifiers=[].

2. Баг второй

  • Mon Apr 17 15:11:23 2017
17/04/2017 15:11:04 - Enter
17/04/2017 15:11:06 - 
17/04/2017 15:11:06 - Shift ( * 2 )
17/04/2017 15:11:06 - Shift ( * 3 )
17/04/2017 15:11:06 - Shift ( * 4 )
17/04/2017 15:11:06 - Shift ( * 5 )
17/04/2017 15:11:06 - Shift ( * 6 )
17/04/2017 15:11:06 - Shift ( * 7 )
17/04/2017 15:11:06 - Shift ( * 8 )
17/04/2017 15:11:06 - Shift ( * 9 )
17/04/2017 15:11:06 - Shift ( * 10 )
17/04/2017 15:11:06 - Shift ( * 11 )
17/04/2017 15:11:06 - Shift ( * 12 )
17/04/2017 15:11:06 - Shift ( * 13 )
17/04/2017 15:11:06 - Shift ( * 14 )
17/04/2017 15:11:06 - Shift + e
17/04/2017 15:11:06 - Shift + e, r
17/04/2017 15:11:07 -  ( * 2 )
17/04/2017 15:11:08 - Shift ( * 3 )
17/04/2017 15:11:08 - Shift ( * 4 )
17/04/2017 15:11:08 - Shift ( * 5 )
17/04/2017 15:11:08 - Shift ( * 6 )
17/04/2017 15:11:08 - Shift ( * 7 )
17/04/2017 15:11:08 - Shift ( * 8 )
17/04/2017 15:11:08 - Shift ( * 9 )
17/04/2017 15:11:08 - Shift ( * 10 )
17/04/2017 15:11:08 - Shift ( * 11 )
17/04/2017 15:11:08 - Shift ( * 12 )
17/04/2017 15:11:08 - Shift ( * 13 )
17/04/2017 15:11:08 - Shift ( * 14 )
17/04/2017 15:11:08 - Shift ( * 15 )
17/04/2017 15:11:08 - Shift ( * 16 )
17/04/2017 15:11:08 - Shift ( * 17 )
17/04/2017 15:11:08 - Shift ( * 18 )
17/04/2017 15:11:08 - Shift ( * 19 )
17/04/2017 15:11:08 - Shift ( * 20 )
17/04/2017 15:11:08 - Shift ( * 21 )
17/04/2017 15:11:08 - Shift ( * 22 )
17/04/2017 15:11:08 - Shift + ;
17/04/2017 15:11:09 - Space
17/04/2017 15:11:09 - c
17/04/2017 15:11:10 - .
17/04/2017 15:11:11 - 6
17/04/2017 15:11:11 - 5
17/04/2017 15:11:11 - Space
17/04/2017 15:11:12 - 
17/04/2017 15:11:12 - LWin ( * 2 )
17/04/2017 15:11:12 - Space
17/04/2017 15:11:13 - 1
17/04/2017 15:11:13 - 0
17/04/2017 15:11:14 - /
17/04/2017 15:11:14 - 7
17/04/2017 15:11:15 - BackSpace
17/04/2017 15:11:15 - BackSpace
17/04/2017 15:11:16 - .
17/04/2017 15:11:16 - 7
17/04/2017 15:11:16 - Space
17/04/2017 15:11:17 - CapsLock
17/04/2017 15:11:18 - v
17/04/2017 15:11:18 - j
17/04/2017 15:11:18 - n
17/04/2017 15:11:18 - l
17/04/2017 15:11:18 - n
17/04/2017 15:11:19 - BackSpace
17/04/2017 15:11:19 - BackSpace
17/04/2017 15:11:19 - BackSpace
17/04/2017 15:11:19 - BackSpace
17/04/2017 15:11:19 - BackSpace
17/04/2017 15:11:20 - CapsLock
17/04/2017 15:11:21 - CapsLock
17/04/2017 15:11:23 - 
17/04/2017 15:11:23 - LWin ( * 2 )
17/04/2017 15:11:23 - LWin ( * 3 )
17/04/2017 15:11:23 - LWin + Numpad2
03:02:34.468 [Info]
                    Catched Key=[Space] with VKCode=[32] and message=[257], modifiers=[].
03:02:34.469 [Info]
                    Mahou is active = [False], Mahou handle [5966200], fore win handle [1312888]
03:02:34.481 [Info]
                    Last word cleared.
03:02:34.481 [Info]
                    Words cleared.
03:02:34.482 [Info]
                    Last word cleared.
03:02:34.482 [Info]
                    Words cleared.
03:02:34.483 [Info]
                    Mahou is active = [False], Mahou handle [5966200], fore win handle [1312888]
03:02:34.486 [Info]
                    Alt is down, starting capture of Numpads…
03:02:34.487 [Info]
                    Last word cleared.
03:02:34.488 [Info]
                    Words cleared.
03:02:34.488 [Info]
                    Last word cleared.
03:02:34.488 [Info]
                    Words cleared.
03:02:34.489 [Info]
                    Catched Key=[F12] with VKCode=[123] and message=[256], modifiers=[ShiftAltCtrlWin].
03:02:34.490 [Info]
                    Last word cleared.
03:02:34.490 [Info]
                    Words cleared.
03:02:34.490 [Info]
                    Catched Key=[F12] with VKCode=[123] and message=[257], modifiers=[ShiftAltCtrlWin].
03:02:34.490 [Info]
                    Mahou is active = [False], Mahou handle [5966200], fore win handle [1312888]
03:02:34.493 [Info]
                    Hotkey fired.
03:02:34.625 [Info]
                    All modifiers sended up.
03:02:34.625 [Info]
                    All modifiers sended up.
03:02:34.626 [Info]
                    Exit by user demand.
03:02:34.677 [Info]
                    Last word cleared.
03:02:34.677 [Info]
                    Words cleared.
03:02:34.693 [Info]
                    Last word cleared.
03:02:34.693 [Info]
                    Words cleared.
03:02:34.705 [Info]
                    Global hooks stopped.
03:11:29.410 [Info]
                    Locales for ALL comboboxes refreshed.
03:11:29.421 [Info]
                    Hotkeys initialized.
03:11:29.434 [Info]
                    Language changed.
03:11:29.445 [Info]
                    All configurations loaded.
03:11:29.471 [Info]
                    Global hooks started.
03:11:29.850 [Info]
                    Catched Key=[Capital] with VKCode=[20] and message=[256], modifiers=[].
03:11:29.941 [Info]
                    Catched Key=[Capital] with VKCode=[20] and message=[257], modifiers=[].

3. Баг третий

  • Mon Apr 17 15:28:30 2017
17/04/2017 15:28:15 - 6
17/04/2017 15:28:16 - 8
17/04/2017 15:28:16 - Space
17/04/2017 15:28:16 - LWin
17/04/2017 15:28:17 - LWin ( * 2 )
17/04/2017 15:28:17 - Space
17/04/2017 15:28:17 - 
17/04/2017 15:28:18 - <kbd>Ctrl</kbd> ( * 2 )
17/04/2017 15:28:20 - Space
17/04/2017 15:28:20 - p
17/04/2017 15:28:20 - n
17/04/2017 15:28:21 - j
17/04/2017 15:28:21 - BackSpace
17/04/2017 15:28:21 - BackSpace
17/04/2017 15:28:21 - BackSpace
17/04/2017 15:28:21 - CapsLock
17/04/2017 15:28:21 - p
17/04/2017 15:28:22 - n
17/04/2017 15:28:22 - h
17/04/2017 15:28:22 - g
17/04/2017 15:28:22 - j
17/04/2017 15:28:22 - BackSpace
17/04/2017 15:28:22 - BackSpace
17/04/2017 15:28:22 - BackSpace
17/04/2017 15:28:23 - BackSpace
17/04/2017 15:28:23 - BackSpace
17/04/2017 15:28:24 - CapsLock
17/04/2017 15:28:25 - CapsLock
17/04/2017 15:28:30 - 
17/04/2017 15:28:30 - LWin + Numpad2
03:14:28.648 [Info]
                    Catched Key=[F12] with VKCode=[123] and message=[256], modifiers=[ShiftAltCtrlWin].
03:14:28.649 [Info]
                    Last word cleared.
03:14:28.649 [Info]
                    Words cleared.
03:14:28.650 [Info]
                    Catched Key=[F12] with VKCode=[123] and message=[257], modifiers=[ShiftAltCtrlWin].
03:14:28.651 [Info]
                    Mahou is active = [False], Mahou handle [9308054], fore win handle [1312888]
03:14:28.656 [Info]
                    Hotkey fired.
03:14:28.786 [Info]
                    All modifiers sended up.
03:14:28.786 [Info]
                    All modifiers sended up.
03:14:28.786 [Info]
                    Exit by user demand.
03:14:28.838 [Info]
                    Last word cleared.
03:14:28.838 [Info]
                    Words cleared.
03:14:28.854 [Info]
                    Last word cleared.
03:14:28.854 [Info]
                    Words cleared.
03:14:28.866 [Info]
                    Global hooks stopped.
03:28:43.491 [Info]
                    Locales for ALL comboboxes refreshed.
03:28:43.511 [Info]
                    Hotkeys initialized.
03:28:43.523 [Info]
                    Language changed.
03:28:43.534 [Info]
                    All configurations loaded.
03:28:43.559 [Info]
                    Global hooks started.
03:28:44.907 [Info]
                    Catched Key=[Capital] with VKCode=[20] and message=[256], modifiers=[].
03:28:44.966 [Info]
                    Catched Key=[Capital] with VKCode=[20] and message=[257], modifiers=[].

4. Баг четвёртый

  • Mon Apr 17 15:32:45 2017
17/04/2017 15:31:59 - <kbd>Ctrl</kbd> + Numpad1
17/04/2017 15:32:07 - LButton - 1265 x 856
17/04/2017 15:32:08 - 
17/04/2017 15:32:10 - LButton - 582 x 79
17/04/2017 15:32:31 - LButton - 285 x 488
17/04/2017 15:32:32 - BackSpace
17/04/2017 15:32:32 - BackSpace
17/04/2017 15:32:32 - BackSpace
17/04/2017 15:32:33 - 
17/04/2017 15:32:33 - Shift + -
17/04/2017 15:32:34 - ь
17/04/2017 15:32:34 - ф
17/04/2017 15:32:35 - BackSpace
17/04/2017 15:32:35 - BackSpace
17/04/2017 15:32:35 - CapsLock
17/04/2017 15:32:36 - ь
17/04/2017 15:32:36 - ф
17/04/2017 15:32:36 - ч
17/04/2017 15:32:37 - CapsLock
17/04/2017 15:32:40 - CapsLock
17/04/2017 15:32:40 - CapsLock
17/04/2017 15:32:45 - 
17/04/2017 15:32:45 - LWin + Numpad2
03:31:40.464 [Info]
                    Catched Key=[F12] with VKCode=[123] and message=[256], modifiers=[ShiftAltCtrlWin].
03:31:40.465 [Info]
                    Last word cleared.
03:31:40.465 [Info]
                    Words cleared.
03:31:40.467 [Info]
                    Catched Key=[F12] with VKCode=[123] and message=[257], modifiers=[ShiftAltCtrlWin].
03:31:40.467 [Info]
                    Mahou is active = [False], Mahou handle [3017024], fore win handle [1312888]
03:31:40.475 [Info]
                    Hotkey fired.
03:31:40.613 [Info]
                    All modifiers sended up.
03:31:40.613 [Info]
                    All modifiers sended up.
03:31:40.613 [Info]
                    Exit by user demand.
03:31:40.665 [Info]
                    Last word cleared.
03:31:40.665 [Info]
                    Words cleared.
03:31:40.681 [Info]
                    Last word cleared.
03:31:40.681 [Info]
                    Words cleared.
03:31:40.693 [Info]
                    Global hooks stopped.
03:32:47.517 [Info]
                    Locales for ALL comboboxes refreshed.
03:32:47.530 [Info]
                    Hotkeys initialized.
03:32:47.543 [Info]
                    Language changed.
03:32:47.553 [Info]
                    All configurations loaded.
03:32:47.578 [Info]
                    Global hooks started.
03:32:48.705 [Info]
                    Catched Key=[Back] with VKCode=[8] and message=[256], modifiers=[].
03:32:48.706 [Info]

5. Баг пятый

Заметил, что баги происходят, когда жму Super+Keypad8 (см. п. 2.4).

  • Mon Apr 17 15:35:29 2017
17/04/2017 15:35:15 - Shift + 9
17/04/2017 15:35:15 - p
17/04/2017 15:35:16 - i
17/04/2017 15:35:16 - n
17/04/2017 15:35:16 - t
17/04/2017 15:35:16 - Shift
17/04/2017 15:35:16 - Shift + -
17/04/2017 15:35:17 - BackSpace
17/04/2017 15:35:17 - BackSpace
17/04/2017 15:35:17 - BackSpace
17/04/2017 15:35:18 - BackSpace
17/04/2017 15:35:18 - r
17/04/2017 15:35:18 - i
17/04/2017 15:35:18 - n
17/04/2017 15:35:19 - t
17/04/2017 15:35:19 - 
17/04/2017 15:35:19 - Shift + -
17/04/2017 15:35:20 - m
17/04/2017 15:35:20 - a
17/04/2017 15:35:20 - x
17/04/2017 15:35:21 - Right
17/04/2017 15:35:22 - CapsLock
17/04/2017 15:35:22 - CapsLock
17/04/2017 15:35:29 - 
17/04/2017 15:35:29 - LWin + Numpad2
03:32:56.006 [Info]
                    Mahou is active = [False], Mahou handle [23201224], fore win handle [1312888]
03:32:56.012 [Info]
                    Catched Key=[Space] with VKCode=[32] and message=[257], modifiers=[Win].
03:32:56.013 [Info]
                    Mahou is active = [False], Mahou handle [23201224], fore win handle [1312888]
03:32:56.028 [Info]
                    Alt is down, starting capture of Numpads…
03:32:56.029 [Info]
                    Last word cleared.
03:32:56.029 [Info]
                    Words cleared.
03:32:56.031 [Info]
                    Last word cleared.
03:32:56.031 [Info]
                    Words cleared.
03:32:56.033 [Info]
                    Catched Key=[F12] with VKCode=[123] and message=[256], modifiers=[ShiftAltCtrlWin].
03:32:56.034 [Info]
                    Last word cleared.
03:32:56.034 [Info]
                    Words cleared.
03:32:56.035 [Info]
                    Catched Key=[F12] with VKCode=[123] and message=[257], modifiers=[ShiftAltCtrlWin].
03:32:56.035 [Info]
                    Mahou is active = [False], Mahou handle [23201224], fore win handle [1312888]
03:32:56.039 [Info]
                    Hotkey fired.
03:32:56.173 [Info]
                    All modifiers sended up.
03:32:56.173 [Info]
                    All modifiers sended up.
03:32:56.174 [Info]
                    Exit by user demand.
03:32:56.226 [Info]
                    Last word cleared.
03:32:56.226 [Info]
                    Words cleared.
03:32:56.242 [Info]
                    Last word cleared.
03:32:56.242 [Info]
                    Words cleared.
03:32:56.254 [Info]
                    Global hooks stopped.
03:35:32.775 [Info]
                    Locales for ALL comboboxes refreshed.
03:35:32.791 [Info]
                    Hotkeys initialized.
03:35:32.807 [Info]
                    Language changed.
03:35:32.818 [Info]
                    All configurations loaded.
03:35:32.846 [Info]
                    Global hooks started.
03:35:33.805 [Info]
                    Catched Key=[Oemcomma] with VKCode=[188] and message=[256], modifiers=[].
03:35:33.849 [Info]
                    Catched Key=[Oemcomma] with VKCode=[188] and message=[257], modifiers=[].
03:35:33.850 [Info]
                    Mahou is active = [False], Mahou handle [1575830], fore win handle [1312888]
03:35:34.835 [Info]
                    Catched Key=[Capital] with VKCode=[20] and message=[256], modifiers=[].
03:35:34.939 [Info]
                    Catched Key=[Capital] with VKCode=[20] and message=[257], modifiers=[].
03:35:34.939 [Info]
                    Mahou is active = [False], Mahou handle [1575830], fore win handle [1312888]
03:35:34.942 [Info]
                    Changing layout using normal mode, WinAPI.PostMessage [WinAPI.WM_INPUTLANGCHANGEREQUEST] with LParam [4039115801].
03:35:34.953 [Info]
                    Changing layout by CapsLock key.
03:35:35.850 [Info]
                    Catched Key=[Space] with VKCode=[32] and message=[256], modifiers=[].
03:35:35.851 [Info]
                    Adding one new empty word to words, and adding to it [Space] key.
03:35:35.851 [Info]
                    Last word cleared.
03:35:35.909 [Info]
                    Catched Key=[Space] with VKCode=[32] and message=[257], modifiers=[].
03:35:35.909 [Info]
                    Mahou is active = [False], Mahou handle [1575830], fore win handle [1312888]
03:35:36.050 [Info]
                    Catched Key=[T] with VKCode=[84] and message=[256], modifiers=[].
03:35:36.110 [Info]
                    Catched Key=[Space] with VKCode=[32] and message=[256], modifiers=[].
03:35:36.110 [Info]
                    Adding one new empty word to words, and adding to it [Space] key.
03:35:36.111 [Info]
                    Last word cleared.

4. Environment

MAHOU DEBUG INFO

Environment info

  • Mahou 2.1.1.6
  • OS = [Microsoft Windows NT 6.2.9200.0]
  • x64 = [True]
  • .Net = [4.0.30319.42000]

All installed layouts

SashaCoolMakEn(4039181321)
SashaCoolMakRU(4039115801)
US(67699721)
SashaCoolMakEn(4039181321)
SashaCoolMakRU(4039115801)
US(67699721)

Mahou.ini

!Unicode(✔), Mahou settings file
[FirstStart]
First=true
[Functions]
TrayIconVisible=True
ConvertSelectionLayoutSwitching=False
ReSelect=True
RePress=True
AddOneSpaceToLastWord=False
ConvertSelectionLayoutSwitchingPlus=False
ScrollTip=False
StartupUpdatesCheck=False
Logging=True
CapsLockTimer=True
TrayFlags=True
BlockMahouHotkeysWithCtrl=False
SymbolIgnoreModeEnabled=false
MCDServerSupport=False
OneLayoutWholeWord=True
[Layouts]
SwitchBetweenLayouts=True
EmulateLayoutSwitch=False
EmulateLayoutSwitchType=Alt+Shift
ChangeToSpecificLayoutByKey=True
MainLayout1=SashaCoolMakEn(4039181321)
MainLayout2=SashaCoolMakRU(4039115801)
SpecificKey1=1
SpecificKey2=0
SpecificKey3=0
SpecificKey4=0
SpecificLayout1=Switch between layouts
SpecificLayout2=
SpecificLayout3=
SpecificLayout4=
[Appearence]
DisplayLangTooltipForMouse=False
DisplayLangTooltipForMouseOnChange=False
DisplayLangTooltipForCaret=False
DisplayLangTooltipForCaretOnChange=False
DifferentColorsForLayouts=False
Language=English
Layout1ForeColor=#000000
Layout1BackColor=#FFFFFF
Layout1TransparentBackColor=False
Layout1Font=Microsoft Sans Serif, 8.25pt
Layout1Height=14
Layout1Width=26
Layout1PositionX=8
Layout1PositionY=0
Layout2ForeColor=#000000
Layout2BackColor=#FFFFFF
Layout2TransparentBackColor=False
Layout2Font=Microsoft Sans Serif, 8.25pt
Layout2Height=14
Layout2Width=26
Layout2PositionX=8
Layout2PositionY=0
MouseLTForeColor=#000000
MouseLTBackColor=#FFFFFF
MouseLTTransparentBackColor=False
MouseLTFont=Microsoft Sans Serif, 8.25pt
MouseLTHeight=14
MouseLTWidth=26
MouseLTPositionX=8
MouseLTPositionY=0
CaretLTForeColor=#FF8080
CaretLTBackColor=Purple
CaretLTTransparentBackColor=False
CaretLTFont=Lucida Console, 9.75pt, style=Bold
CaretLTHeight=14
CaretLTWidth=26
CaretLTPositionX=8
CaretLTPositionY=12
MCDS_Pos_X=50
MCDS_Pos_Y=25
MCDS_Top=60
MCDS_Bottom=45
Layout1LTText=
Layout2LTText=
[Timings]
LangTooltipForMouseRefreshRate=25
LangTooltipForCaretRefreshRate=25
DoubleHotkey2ndPressWait=350
FlagsInTrayRefreshRate=100
ScrollLockStateRefreshRate=100
CapsLockDisableRefreshRate=100
SelectedTextGetMoreTries=False
SelectedTextGetMoreTriesCount=5
ExcludedPrograms=LA.exe SomeProg.exe
[Snippets]
SnippetsEnabled=False
[Hotkeys]
ToggleMainWindow_Enabled=True
ToggleMainWindow_Double=False
ToggleMainWindow_Modifiers=Win + Control + Shift + Alt
ToggleMainWindow_Key=45
ConvertLastWord_Enabled=True
ConvertLastWord_Double=False
ConvertLastWord_Modifiers=Control
ConvertLastWord_Key=119
ConvertSelectedText_Enabled=True
ConvertSelectedText_Double=False
ConvertSelectedText_Modifiers=Win + None
ConvertSelectedText_Key=119
ConvertLastLine_Enabled=True
ConvertLastLine_Double=False
ConvertLastLine_Modifiers=None
ConvertLastLine_Key=119
ConvertLastWords_Enabled=True
ConvertLastWords_Double=False
ConvertLastWords_Modifiers=Shift
ConvertLastWords_Key=122
ToggleSymbolIgnoreMode_Enabled=True
ToggleSymbolIgnoreMode_Double=False
ToggleSymbolIgnoreMode_Modifiers=Shift + Control
ToggleSymbolIgnoreMode_Key=122
SelectedTextToTitleCase_Enabled=False
SelectedTextToTitleCase_Double=True
SelectedTextToTitleCase_Modifiers=Shift
SelectedTextToTitleCase_Key=16
SelectedTextToRandomCase_Enabled=False
SelectedTextToRandomCase_Double=True
SelectedTextToRandomCase_Modifiers=Shift
SelectedTextToRandomCase_Key=17
SelectedTextToSwapCase_Enabled=False
SelectedTextToSwapCase_Double=False
SelectedTextToSwapCase_Modifiers=Win + 
SelectedTextToSwapCase_Key=19
SelectedTextTransliteration_Enabled=False
SelectedTextTransliteration_Double=False
SelectedTextTransliteration_Modifiers=Win + 
SelectedTextTransliteration_Key=191
ExitMahou_Enabled=True
ExitMahou_Double=False
ExitMahou_Modifiers=Win + Control + Shift + Alt
ExitMahou_Key=123
RestartMahou_Enabled=True
RestartMahou_Modifiers=Win + Shift + Alt
RestartMahou_Key=33



Спасибо.

Bug Probably fixed

All 65 comments

Возможно, связанный вопрос.

Возможно стоит прочитать что я написал там?
И работает ли гор. клавиша перезапуска?(т.к. она использует стандартный метод Windows для ловли гор. клавиш)

Проблема воспроизводится для Mahou 2.1.2.6.

1. Ответы к комментариям

Возможно стоит прочитать что я написал там?

Попробуйте отключить эту функцию(Нажимать заново модификаторы после действия горячих клавиш.) и проверьте как будет работать.

Отключал → получал такое же поведение.

А горячая клавиша Перезагрузки Mahou в Mahou - что не работает?

Когда возникает ошибка, не работает. Перезагружаю Mahou при помощи AutoHotkey.

Autohokey - так же отключается через некоторое время, мне помогло отключить Контроль Учетных Записей.(В реестре.)

У меня отключён ещё до момента, как узнал о Mahou.

Спасибо.

@Kristinita Ну у меня тоже отключается но очень редко, пока не пойму от чего...

У меня тут появилась мысль насчет этой проблемы: Может она появляется из-за функции __программ исключений__? Попробуйте поработать с версией Mahou v2.0.0.8(в которой еще нет этой функции), раз у вас так часто получается поймать эту ошибку.

Сейчас делал немного дебаггинга вручную, заметил ошибки Windows с кодами 2, 87, 1008 которые появляются после использования функций которые используют буфер обмена(да... опять проблемы с ним...) думаю нужно попробовать подебаггить в VS, а то вручную я может чего еще не видел...

Даже когда Hook умирает горячая клавиша перезапуска, подсказки языка, и прочие функции не зависящие от hook'а работают, 3 раза сейчас проверял.
Может мне сделать возможность выбирать способ регистрации горячих клавиш используя стандартный метод Windows(в котором на каждую гор. клавишу свой hook) или мой(все гор. клавиши в одном hook'е кроме перезапуска)? Хотя только в моем способе есть функция двойных горячих клавиш...

А может создать таймер проверки состояния hook'а или может просто исправить ошибки с буфером?

Хотя глючит чаще только в debug версии, в release(оптимизированная под скорость, ту которую я обычно ставлю в релизах здесь) очень редко встретить смерть hook'а... Даже при включенных всех возможных функциях и всех таймерах установленных на 1 мс.

Печально конечно, :disappointed: но даже VS не может следить за ошибками hook'ов из .Net... А сам .Net может, если вручную поставить лог функции последней Win32 ошибки, думаю это займет много времени прежде чем я смогу разобраться во всем этом, но я постараюсь по-быстрее...

@Kristinita Похоже ошибка таки совсем не простая и связана с архитектурой процессора(или с переполнением? т.к. чаще встречается если очень быстро посылать вводы), т.к. в функции которая выполняет ввод букв(SendInput, есть альтернатива keybd_event но та имеет плохую синхронизацию) программно отличаются размеры INPUT'а в 32/64 битных приложениях, что собственно и вызывает ошибку 87(не правильные аргументы) в следствии вызывающее отключение hook'а системой. Пока что я не знаю как можно решить эту проблему... (и походу эта проблема была в Mahou всегда, хоть и очень _редкой_ в релиз версиях)

Пока что нашел здесь, что можно поставить таймаут для hook'ов, не знаю правда ли, но проверит стоит, в общем нужно создать ключ LowLevelHooksTimeout в HKEY_CURRENT_USER\Control Panel\Desktop\ DWORD со значением 10000(10 сек.) или каким-то другим по выбору, буду дальше думать и искать/проверять...

Пожалуй самым лёгким решением будет, то что я писал ранее:

Может мне сделать возможность выбирать способ регистрации горячих клавиш используя стандартный метод Windows(в котором на каждую гор. клавишу свой hook) или мой(все гор. клавиши в одном hook'е кроме перезапуска)? Хотя только в моем способе есть функция двойных горячих клавиш...

т.к. в версиях Mahou в которых используется Windows-способ регистрации горячих клавиш(я проверял на 1.2.0.7, hook - не умирает, и хуки гор. клавиш не умирают тоже.

Проблема происходит из-за высокой нагрузки на Hook действиями горячих клавиш(а именно многочисленными SendInput), так что думаю сделаю способ регистрации горячих клавиш используя стандартный метод Windows, и приделаю как-нибудь к нему функцию двойных горячих клавиш, и будет все работать нормально.(постараюсь сделать завтра)

Ладно, готово вот тестовая сборка: Mahou(ImmortalHook).zip

Довольно многое я уже изменил... И будет работать очень стабильно - это точно! Сейчас уже заканчиваю переделку всего что связанно с горячими клавишами, тестирую и делаю(самый стабильный из всех по моему мнению) релиз 2.3.0.0.

Еще добавил функцию перезапуска Hook'ов, так чтобы наверняка, ну теперь проблема вероятно решена... Релиз Mahou-v2.3.0.0.

С новым релизом теперь уже у меня полностью конвертация перестала работать.

полностью конвертация перестала работать

@MishGa Какая именно? Перезапуск пробовали? Настроены ли раскладки во вкладке Раскладки?(или включена ли эмуляция переключения/циклич. режим?) И какая горячая клавиша стоит?

Всё настроено, пользуюсь с самых первых версий.
Капсом переключает раскладку, горячие клавиши ""показать окно", или "выключить" - работают, рабтает заданый язык в программе. Всё что связано с конвертацией не работает. Проверял в фаерфокс, миранде, блокноте. Перезапускал прогу, правда компутер поленился перегрузить, у меня потом 10 минут планировщик задания выполняет. Откатил на предыдущую и всё опять заработало.

@MishGa Можешь прислать мне лог, при включенном логировании, нажимая клавиши конвертации?

@MishGa Горячие клавиши работают, и HOOK'и(перехваты) видимо тоже...(может что-то блокирует многочисленные перезапуски HOOK'ов?), попробуй отключить функцию "Перезапускать HOOK'и" и перезапусти и посмотри как работает.

А скажи какие конкретно стоят горячие клавиши(есть CTRL?)

может что-то блокирует многочисленные перезапуски HOOK'ов?

@MishGa Вероятнее всего слова просто очищаются перед действиями горячих клавиш из-за модификаторов(в основном CTRL)? Если это так, то тогда только раскладка меняется.

Проблема в Миранде НГ. Запускаю Mahou, работает всё. Пытаюсь сделать конвертацию в Миранде - "конвертация последнего слова" (pause) - не работает, "конвертация выделенного слова" (conrol+pause) - работает. Открываю любую программу - конвертация больше не работает. Отключаю Миранду, перегружаю Mahou - всё опять работает.
Изначально была включена функция постоянная раскладка для Miranda64.exe, отключил - не помогло.
"Перезапускать HOOK'и" - отключил, не помогает. В программе использую горячие клавиши:
Pause
Control + Pause
Scroll
Двойной Shift
Control + Shift + Alt + Insert
PS. Может поможет, у меня в системе установлена комбинация горячих клавиш "двойной ctrl", использует программа CLCL.

хм, у меня нормально работает везде, даже в окне сообщения:
mng mahou-v2 3

Вероятнее всего слова просто очищаются перед действиями горячих клавиш из-за модификаторов(в основном CTRL)? Если это так, то тогда только раскладка меняется.

@MishGa А раскладка меняется?

P.S. И постоянная раскладка работает.

Вот в миранде у меня тоже всё работает. А потом в других программах не работает.. Может зависит от моих плагинов. Откатил на предыдущую, работает всё нормально. Пока некогда дальше смотреть что и как.

А потом в других программах не работает..

У меня работает. И судя по логу у тебя тоже.

Может зависит от моих плагинов

Напиши какие или скинь мне всю папку Plugins.

Сначала перезагружу компутер. Я его по две-три недели не выключаю, может просто пора. Завтра вечерком посмотрю что получится. У меня по времени уже довольно поздно.

@MishGa Ну давай, спи спокойно.

Перегрузил, что-то лучше не стало. Теперь и без миранды через раз переключает. Посижу пока на предыдущей. Бывало уже что глюки непонятные, а следующий релиз работает прекрасно.

а следующий релиз

О каком речь?

Пока что я нашел только один серьезный баг который скоро исправлю и видимо это тому подтверждение:

Теперь и без миранды через раз переключает

судя по логу.

Можешь мне свои настройки скинуть? Mahou.ini?(Если используешь прокси удали секцию [Proxy] для безопасности)

А и еще включен ли контроль уч. записей?(Это оч. важно если Windows 10)

https://drop.me/awEOzB
UAC отключён.

@MishGa Слушай у меня с твоим Mahou.ini даже не запускается, буду искать причину. А ты пока попробуй со стандартными настройками поработать.(Перемести Mahou.ini из папки Mahou куда-то и запусти Mahou.exe)

И еще попробуй отключить эмуляцию переключения раскладки.

Слушай у меня с твоим Mahou.ini даже не запускается

Причина в том что у тебя стоял шрифт в настройках которого у меня нет и поэтому Mahou закрывался из-за ошибки.(это тоже исправлю)

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

Удалил все настройки и настроил всё заново. Проблемы не исчезли. Проверил в последней и в dev по ссылке.
https://drop.me/BNjOdB
Вроде бы всё делал по рекомендации.
PS. Шрифт и сам не заметил как поставил.

настроил всё заново

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

Да, так.

@MishGa Все тогда просто жди.

@MishGa Только что понял почему так происходило:

все из-за функции подсветки Scroll Lock и нового метода горячих клавиш и горячей клавишей конвертации нескольких слов(в которой тоже есть пару проблем, некоторые из низ я уже решил в версии AppVeyor что давал раньше) на установленной на Scroll Lock, оказывается все очень просто.

Отключил горячую на Scroll Lock, конвертация работает, не работает двойной Shft для Заглавного реестра. И тебя кажется опечатка "Выделенные слов в Заглавный реестр", точно не "словА"?
Проверял сразу в dev.

И тебя кажется опечатка

Верно, исправлю.

не работает двойной Shft

У меня работает, попробуй здесь:
Mahou_LATEST.gz

Изменил клавишу, заработало, вернул назад на двойной shift и всё равно работает. Видимо был какой-то локальный глюк.

@MishGa Ясно, сейчас подправляю разные вещи и скоро(1-2 часа) будет новый релиз.

Изменил клавишу, заработало, вернул назад на двойной shift и всё равно работает

А ну да двойной Shift в новой версии имеет другие значения для регистрации горяч. клавиш, если раньше брался код клавиши Shift(16) то сейчас только код модификатора Shift(4).

Исправил ужасную несовместимость Scroll-Lock назначенным на конвертацию нескольких слов и подсказкой языка Scroll-Lock, сейчас исправляю мелкие ошибки вроде той что была со шрифтом и делаю релиз.

@MishGa Mahou-v2.3.0.5

Вы сильно удивитесь, но Mahou_LATEST.gz работает нормально, а релиз так и остался с ошибкой конвертации.
И ещё вопрос, это баг или так надо. В Maho установлена постоянная раскладка "русский" для Миранды. Пишу например "привет" жму pause происходит конвертация в ghbdtn, жму ещё раз, но обратной конвертации уже не происходит. Соответственно если постоянная раскладка отключенна - всё работает как надо.

Вы сильно удивитесь

Очень... Изменений очень мало, видимо у вас что-то не так с настройками... опять...

Пишу например "привет" жму pause происходит конвертация в ghbdtn

Верно, раскладка постоянно становится русской, а Mahou постоянно конвертирует её с русской.

Ну значит буду пока на dev сидеть, всё что надо работает.
Я так понял,если я вручную конвертировал слово на англ. то обратно уже только удалить и напечатать.

Ну значит буду пока на dev сидеть, всё что надо работает.

Ну раз работает, не возражаю.

Я так понял,если я вручную конвертировал слово на англ. то обратно уже только удалить и напечатать.

Ну вообще-то можно, поставь скорость обновления постоянной раскладки, скажем 500мс, и тогда ты должен будеш нажать конверт последнего слова(или выделения) 2 раза за 500мс.

Очень... Изменений очень мало, видимо у вас что-то не так с настройками... опять...

Я же не написал, как вы просили я проверяю с настройками по умолчанию. И даже на всякий случай от администратора.

Ну вообще-то можно, поставь скорость обновления постоянной раскладки, скажем 500мс, и тогда ты должен будеш нажать конверт последнего слова(или выделения) 2 раза за 500мс.

Работает. Спасибо, пригодится, пару раз нужно было.

Mahou_LATEST.gz

@MishGa А вот там как-раз исправление несовместимости Scroll-Lock назначенным на конвертацию нескольких слов и подсказкой языка Scroll-Lock не до конца рабочее, т.к. при смене раскладки и включенной функции подсказки языка Scroll-Lock, он сам активирует режим конвертации нескольких слов в котором клавиши 1->9+0 не работают(не пишутся) после первого нажатия.(и так после каждой смены раскладки)

@MishGa А... Попробуй здесь:
Mahou(tiny-rule-removed).gz

несовместимости Scroll-Lock назначенным на конвертацию нескольких слов и подсказкой языка Scroll-Lock

Я scroll вообще не использую, только лампочку для подсказки, может по этому и не глючит?

Совсем плохо. Настройки по умолчанию. Работает только scroll (конвертирует выделенный текст).

@MishGa Ок, нашел причину, вот здесь:
Mahou(MishGa).gz
100% нормально работает с любыми(и с твоими конечно же тоже) настройками

@BladeMight Вот теперь всё работает! Благодарю. Я похоже самый вредный пользователь, даже не ловко. Ещё раз спасибо.

@MishGa Пожалуйста.

даже не ловко

Весело же!

@BladeMight, это да. Сам такой.

@Kristinita Похоже работает просто отлично, не переставало работать ни разу за 10 дней. :tada: :sparkles: :tada:

@BladeMight , у меня проблема продолжает воспроизводиться с прежней частотой.

Версия — 2.3.0.7.

Спасибо.

@Kristinita Как?

Пара вопросов:

  1. Все горячие клавиши работают? (если нет, смотрите пункт 4.)
  2. Настроены ли главные 2 раскладки во вкладке Раскладки(не важно если не стоит переключение между раскладками).
  3. Попробуйте напечатать очень длинный текст и посмотреть переписывается ли он после нажатия горячих клавиш.
  4. Насчет ~LWin Up::return думаю в нем может быть проблема, т.к. Mahou ловит нажатие, а не ловит отпуск т.к. AHK блокирует его(и в итоге считает что Win нажат все время)... Попробуйте поработать без этой строчки, и попробуйте в момент когда перестают работать горячие клавиши нажать и отпустить правый Win т.к. у него не отключен отпуск, а потом проверить работоспособность горячих клавиш.

@Kristinita Добавил mini-fix для перезапуска HOOK'ов в Mahou v2.3.1.3.

@Kristinita Скоро будет релиз без low-level HOOK'ов, в котором можно будет забыть о Global hooks stopped, пока что тестовая на AppVeyor.

@Kristinita Релиз Mahou-v2.4.0.0, хуки больше не умрут, т.к. их больше нет :)

Was this page helpful?
0 / 5 - 0 ratings