Open adminmilvus opened 1 day ago
If it helps, I noticed that when holding the ctrl key and pressing keys like A, B, C, keyboard events are fired correctly via anydesk.
Hi! Thanks for posting this issue! I will try installing AnyDesk and reproducing this problem. In the meantime, could you please share the libuiohook debug logs? Maybe, they will contain some interesting info.
Hi @TolikPylypchuk , thank you very much for your feedback!
I am attaching the logs below.
I captured the logs in a Mac environment with an ARM processor, and with an Intel processor, to check the differences.
In both tests, I typed '123456' in sequence to see what happened. These characters are included in the logs to check the order in which they were entered (lines that begin with 'Log received').
Logs MAC Intel Processor (Mac Mini with Intel Core I5)
Log received: hook_set_dispatch_proc [53]: Setting new dispatch callback to 0x114d23124.
Log received: run [391]: Accessibility API is enabled.
Log received: run [402]: CFRunLoopGetCurrent successful.
Log received: create_event_runloop_info [304]: CGEventTapCreate Successful.
Log received: create_event_runloop_info [316]: CFMachPortCreateRunLoopSource successful.
Log received: create_event_runloop_info [334]: CFRunLoopObserverCreate successful.
Log received: dispatch_event [63]: Dispatching event type 1.
123456Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20040001)
Log received: dispatch_key_press [131]: Key 0XA011 pressed. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20000000)
Log received: dispatch_key_release [186]: Key 0XA011 released. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 5.
16/10/2024 16:04:17 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105457022; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
16/10/2024 16:04:17 -03:00: UioHookEvent: Type = KeyReleased; Time = 1729105457250; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
123456Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20040001)
Log received: dispatch_key_press [131]: Key 0XA011 pressed. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 4.
16/10/2024 16:04:24 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105464696; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
Log received: event_to_unicode [713]: Using no runloop for key typed events.
^ALog received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20000000)
Log received: dispatch_key_release [186]: Key 0XA011 released. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 5.
16/10/2024 16:04:29 -03:00: UioHookEvent: Type = KeyReleased; Time = 1729105469924; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
123456Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20040001)
Log received: dispatch_key_press [131]: Key 0XA011 pressed. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
16/10/2024 16:04:45 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105485768; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
Logs MAC ARM Processor (MacBook Pro - Apple M1)
Log received: hook_set_dispatch_proc [53]: Setting new dispatch callback to 0x30002c160.
Log received: run [391]: Accessibility API is enabled.
Log received: run [402]: CFRunLoopGetCurrent successful.
Log received: create_event_runloop_info [304]: CGEventTapCreate Successful.
Log received: create_event_runloop_info [316]: CFMachPortCreateRunLoopSource successful.
Log received: create_event_runloop_info [334]: CFRunLoopObserverCreate successful.
Log received: dispatch_event [63]: Dispatching event type 1.
16/10/2024 16:09:03 -03:00: UioHookEvent: Type = HookEnabled; Time = 1729105743113; Mask = None; Reserved = None
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
16/10/2024 16:09:05 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105745954; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:05 -03:00: UioHookEvent: Type = KeyTyped; Time = 1729105745954; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
1Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105746265; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyTyped; Time = 1729105746265; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
2Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105746594; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyTyped; Time = 1729105746594; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
3Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105746867; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
16/10/2024 16:09:06 -03:00: UioHookEvent: Type = KeyTyped; Time = 1729105746867; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
4Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:07 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105747093; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
16/10/2024 16:09:07 -03:00: UioHookEvent: Type = KeyTyped; Time = 1729105747093; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
5Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_key_press [131]: Key 0X41 pressed. (0)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X41 typed. (a)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:07 -03:00: UioHookEvent: Type = KeyTyped; Time = 1729105747523; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar = a
16/10/2024 16:09:07 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105747523; Mask = None; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcA; RawCode = 0; KeyChar =
6Log received: dispatch_key_release [186]: Key 0X41 released. (0)
Log received: dispatch_event [63]: Dispatching event type 5.
Log received: dispatch_modifier_change [339]: Modifiers Changed for key 0X3B. (0X20040001)
Log received: dispatch_key_press [131]: Key 0XA011 pressed. (0X3B)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
16/10/2024 16:09:12 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105752868; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcLeftControl; RawCode = 59; KeyChar =
Log received: dispatch_key_press [131]: Key 0X43 pressed. (0X8)
Log received: dispatch_event [63]: Dispatching event type 4.
Log received: event_to_unicode [713]: Using no runloop for key typed events.
Log received: dispatch_key_press [156]: Key 0X43 typed. (c)
Log received: dispatch_event [63]: Dispatching event type 3.
16/10/2024 16:09:13 -03:00: UioHookEvent: Type = KeyPressed; Time = 1729105753058; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcC; RawCode = 8; KeyChar =
16/10/2024 16:09:13 -03:00: UioHookEvent: Type = KeyTyped; Time = 1729105753058; Mask = LeftCtrl; Reserved = SimulatedEvent; Keyboard = KeyboardEventData: KeyCode = VcC; RawCode = 8; KeyChar = c
^C
Thanks a lot, I will look into it when I have some spare time.
I'm trying to capture keyboard data using the SharpHook library in a Mac OS environment, as per the example on the website.
Everything works great, except if the machine is accessed via AnyDesk.
On Intel processors, only some keys are recognized, as below (such as CTRL, ALT or SHIFT) and the rest do not trigger events. The other keys such as 'Q', 'W', '1', etc., all do not work.
On ARM processors, all keys are recognized as 'A' (except special keys such as CTRL, ALT or SHIFT).
Mouse events are working correctly (via AnyDesk or physically on the machine). Keyboard events only work correctly using the machine physically.
Is there any solution?
Here is an example of my PublishProfile:
Here is the source code: