Re[5]: Win7, два дисплея, монопольно использовать тачскрин
От: ononim  
Дата: 26.12.12 15:34
Оценка:
O>>>>Теоретически: пишем сервис, который открывает HID девайс тачскрина, шлет ему IOCTL_HID_ENABLE_SECURE_READ (сервис должен иметь привилегию SeTcbPrivilege) и дальнейший инпут выгребает тока наш сервис, посылая девайсу IOCTL_HID_GET_INPUT_REPORT. Мышь ограничиваем ужным дисплеем, а апликуха на другом дисплее общается с нашим сервисом и получает инпут исключительно от него.
MBG>>>Спасибо за совет, но вызов DeviceIoControl() c IOCTL_HID_ENABLE_SECURE_READ фэйлится — GetLastError() возвращает 1 (Incorrect function). В чем может быть причина? Сервис стартует с правами LocalSystem, привилегия SeTcbPrivilege устанавливается.
MBG>>Сорри, это я ступил — открывал USB HID мышь. Теперь открываю тач (реального устройства под рукой нет, использую виртуальный из MutliTouch Vista) : посылка IOCTL_HID_GET_INPUT_REPORT (и HidD_GetInputReport()) фейлится с ERROR_CRC.
MBG>Апдейт: Если запустить консоль драйвера (Multitouch.Driver.Console.exe) то девайс не открывается (ERROR_SHARING_VIOLATION).
Ну что я могу сказать — именно эти контролы вызывает виндовые приложения, которые тачпадом заведуют. Я их ковырял както по служебной необходимости.
У микрософта есть пример — http://code.msdn.microsoft.com/windowshardware/HClient-HID-Sample-4ec99697 — он тоже не работает чтоли?
Как много веселых ребят, и все делают велосипед...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.