Всем привет,
Есть задача в юзер-моде (десктоп приложение с привилегиями или служба) определить что ввод текста в другие окна (или движения мыши) на данном десктопе генерируется через API типа SendInput(), keybd_event... Нужно определить факт начала работы удаленной сессии TeamViewver, AnyDesk и др. аналогичного ПО.
Единственное что пока нашел так это
https://github.com/oblitum/Interception
Но может быть можно определить источник событий без драйвера...
Спасибо за идеи!
Здравствуйте, Alex, Вы писали:
A>Всем привет,
A>Есть задача в юзер-моде (десктоп приложение с привилегиями или служба) определить что ввод текста в другие окна (или движения мыши) на данном десктопе генерируется через API типа SendInput(), keybd_event... Нужно определить факт начала работы удаленной сессии TeamViewver, AnyDesk и др. аналогичного ПО.
A>Единственное что пока нашел так это https://github.com/oblitum/Interception
A>Но может быть можно определить источник событий без драйвера...
A>Спасибо за идеи!
SetWindowsHookEx + WH_KEYBOARD_LL + WH_MOUSE_LL
В обработчиках можно проверять в структурах
KBDLLHOOKSTRUCT/
MSLLHOOKSTRUCT поле flags на флаги LLKHF_LOWER_IL_INJECTED/LLKHF_INJECTED — они показывают откуда событие.