Romeo143
Гость
|
|
« : 17-03-2009 20:29 » |
|
Всем привет.
Проблема с получением хендла устройства. Пытаюсь открыть HID мышь или клавиатуру с помощью функции CreateFile :
handle_device=CreateFile(detail_data->DevicePath,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,FILE_FLAG_OVERLAPPED,NULL);
Имя устройства получаю с помощью функции SetupDiGetDeviceInterfaceDetail и выглядит оно так :
\\?\hid#vid_04f2&pid_0111&mi_00#7&138454a8&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} - это имя HID клавиатуры.
Результат выполнения CreateFile - INVALID_HANDLE_VALUE. GetLastError возвращает отказано в доступе.
В хэлпе DDK нашёл фразу что винда открывает мышь и клавиатуру для монопольного использования и следовательно повторное открытие не пройдёт.
Кто-нить знает как это обойти и получить этот хендл? Может быть каким-нить другим способом.
Хендл нужен для дальнейшего использования в функциях HidD_xxx.
Буду признателен за любую информацию !!!
|