8-900-374-94-44
[email protected]
Slide Image
Меню

Что такое hid клавиатура – что это такое и что делать, если она не работает или не распознается компьютерной системой?

Содержание

что это такое и что делать, если она не работает или не распознается компьютерной системой?

В свете последних научных разработок в области компьютерных технологий пользователи все чаще замечают присутствие на компьютерах неких непонятных устройств, опознаваемых операционной системой, как HID-девайсы. В частности, это касается всевозможных игровых контроллеров, устройств ввода и манипуляторов, включая мыши, а также современные HID-клавиатуры. Что это за устройства, почему им присвоены такие названия и как справиться с наиболее распространенными проблемами в их работе, далее и разберемся. Но для начала давайте определимся с пониманием основного термина.

Human Interface Device: что это за оборудование в общем смысле?

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

Для их подключения используются либо USB-интерфейсы и соответствующие порты, либо беспроводные модули Wi-Fi и Bluetooth. Последние два, кстати сказать, тоже относят к классу USB HID. С Wi-Fi-модулями все понятно, ведь те же мыши и клавиатуры беспроводными можно назвать весьма условно, поскольку для их подключения к основному компьютерному блоку как раз и нужен тот самый беспроводный переходник, вставляемый в соответствующий USB-порт. С Bluetooth полной ясности нет, поскольку при подключении к тем же ноутбукам со встроенными «синезубыми» модулями порты USB могут не понадобиться вообще.

HID-клавиатура: что это такое?

Теперь несколько слов непосредственно о клавиатурных блоках. Давайте посмотрим, какие есть виды HID-клавиатур. Что это за устройства, нетрудно сообразить, если просто оценить их визуально. Среди них встречаются и стандартные блоки по типу тех, которые используются на стационарных ПК (стандарт PS/2), и уменьшенные по размерам клавиатуры без цифровых панелей по типу тех, что устанавливаются на ноутбуках с диагоналями экрана 13 дюймов и меньше.

Также можно встретить целые мультимедийные системы, игровые усеченные панели, клавиатуры на мягкой подкладке, сворачивающиеся чуть ли не в трубочку, совершенно миниатюрные блоки с 22, 18, 11 или 10 клавишами и т. д. Вообще считается, что теоретически можно создать блок с 256 клавишами (диапазон ввода/вывода 0-255). Но особой популярностью в последнее время пользуются устройства, на которых положения основных кнопок с литерами и символами изменены, что соответствует заводской установке нестандартной раскладки.

Что делать, если USB-клавиатура не работает: простейшее решение

С основными понятиями ясность внесена. Теперь кратко остановимся на ситуациях, связанных с тем, что клавиатура ПК стандарта HID по каким-то причинам не работает. Устранить неполадки можно несколькими простейшими методами. Первым и самым простым решением, поскольку клавиатурный блок подключается либо непосредственно через USB-порт, либо через беспроводный модуль (но тоже через USB), является смена используемого порта. Вполне возможно, что он просто не работает или имеет другой класс (например, клавиатура рассчитана на подключение через интерфейс USB 3.0, а кабель вставлен в порт USB 2.0).

Отличить разъемы и штекеры можно по цвету (USB 3.0 соответствует синяя окраска).

Переустановка драйвера

Если учесть, что для любого, имеющегося в системе устройства (внешнего или внутреннего) и его корректной работы необходимо специальное управляющее программное обеспечение, называемое драйвером, логично предположить, что проблема может быть именно в нем. Убедиться в этом можно совершенно просто, если вызвать «Диспетчер устройств». Если оборудование с неполадками будет обнаружено, его сразу можно будет увидеть в списке HID-устройств, для которых драйвер не установлен или в его функционировании произошли сбои. Обычно производители поставляют носители с драйверами под свою периферию, так что переустановить драйвер можно самостоятельно.

Но в большинстве случаев это не нужно, поскольку все оборудование класса HID должно распознаваться любой компьютерной системой и без этого.

В этой ситуации лучше всего удалить проблемное устройство целиком и полностью, а затем перезагрузить компьютер. По идее, Windows найдет и установит недостающий драйвер сама.

Управляющее ПО USB-контроллеров

Нередко причина может крыться даже не в самом оборудовании или его драйверах, а в управляющем ПО USB-контроллеров.

В этом случае рекомендуется обновить драйверы всех контроллеров, находящихся в соответствующем разделе все того же «Диспетчера устройств». Для установки самых свежих версий драйверов в обоих случаях можно воспользоваться специальными программами вроде iObit Driver Booster, которые способны находить и устанавливать обновленное программное обеспечение без участия пользователя.

Включение USB в BIOS

Остается добавить еще пару слов о HID-клавиатурах. Что это за устройства, понятно. Как они работают и для чего предназначены, тоже вроде бы ясность есть. Но вот что делать, если вышеперечисленные методы устранить проблему работоспособности так и не смогли? По всей видимости, хотя поддержка периферии этого класса заявлена изначально, что-то могло произойти с настройками первичной системы ввода/вывода.

Для верности зайдите в параметры BIOS/UEFI сразу же после включения компьютера и найдите там пункты вроде USB Keyboard Support или USB Legacy Support. Для них должен быть выставлен параметр Enabled. В некоторых модификациях BIOS можно встретить настройки вроде EHCI Hand-Off и XHCI Hand-Off, отвечающие за ручное переключение между стандартами USB 2.0/3.0. При наличии на компьютере именно Windows-системы они должны быть деактивированы (значение Disabled). В устаревших версиях BIOS также встречается параметр Plug & Play OS, позволяющий автоматически распознавать подключаемые PNP-устройства. Он должен быть включен (значение Yes).

fb.ru

DeniSoft -

Windows не видит USB клавиатуру.

Достаточно часто случается, что клавиатура с интерфейсом USB вдруг перестаёт работать в операционных системах семейства Windows. При этом клавиатура работает в других ОС и меню настроек BIOS. Такое часто случается, если подключалась новая клавиатура в другие порты или часто отключались/подключались разные клавиатуры. Так же проблема может возникнуть при подключении неисправной клавиатуры или клавиатуры с поврежденным шнуром, который работает только в определенном положении, то есть имеет плавающий контакт в жиле.

Ситуация выглядит следующим образом: при подключении клавиатуры в USB порт Windows издаёт звук подключения USB устройства, если, конечно, этот звук не отключён, и пытается установить драйвер устройства. После поиска драйверов система сообщает, что драйвер установить не удалось. При этом в системе появляется "Неизвестное устройство" с именем, указанным производителем в контроллере устройства. Для клавиатуры это обычно "HID Keyboard Device". Ни удаление устройства, ни переключение в другие порты, ни перезагрузки, ни пляски с бубном клавиатуру в систему не возвращают. При этом. клавиатура исправно работает В других ОС и в меню настроек BIOS.

Такое поведение ОС Windows указывает, что система по какой-то причине не может определить принадлежность устройства к группе клавиатур. При этом ручная установка драйвера с явным указанием типа устройства "USB-устройство ввода" или "HID-совместимое устройство" результата не дают. Windows упорно не желает видеть USB-клавиатуру. Многие псевдоспециалисты, столкнувшись с неполадками драйверов Windows предлагают единственное решение: перестановку системы. И, надо сказать, перестановка решает проблему, даже если систему установили не уничтожая предыдущую. А иногда такие "специалисты" уничтожают систему и все данные пользователя.

Если клавиатура определяется некорректно и выводит странное название устройства нужно сначала удалить драйвер этого устройства и переподключить клавиатуру. Для удаления драйвера неверно определённого устройства: двойной щелчок по иконке вызовет свойства логического устройства, на вкладке Оборудование нажать кнопку Свойства, откроется окно свойств конкретного физического устройства. На вкладке Драйвер нажать кнопку Удалить и подтвердить удаление. Теперь нужно переподключить клавиатуру. Если удаление драйвера не помогло, то решать проблему будем радикально.

Для решения этой проблемы нужно всего лишь "вернуть" Windows сведения об устройстве и его драйвере. Эти сведения находятся в файлах с расширением inf. Windows хранит все inf файлы в нескольких местах. Рабочие, актуальные для системы в данный момент хранятся в папке "c:\Windows\inf\". А все остальные, хоть раз побывавшие в системе, в папке "c:\Windows\System32\DriverStore\FileRepository".

Файл "usb.inf" с настройками USB, в том числе и USB-клавиатур, находиться в папке

c:\Windows\System32\DriverStore\FileRepository\usb.inf_amd64_neutral_269d7150439b3372\

Его нужно скопировать в папку

c:\Windows\inf\

и переподключить устройство. Если до этого для USB-клавиатуры драйвера устанавливались в ручном режиме - их нужно удалить. После переподключения устройства необходимые драйвера будут найдены и установлены.

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

Клавиатура:

HKEY_LOCAL_MACHINE\SYSEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}

Имя UpperFilters Значение kbdclass

Мышь:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96F-E325-11CE-BFC1-08002BE10318}
Имя UpperFilters Значение mouclass

Если этих параметров нет, то нужно создать мультистроковый параметр UpperFilters и указать значение kbdclass (Правка->Создать->Мультистроковый параметр). Если имя UpperFilters присутствует, но значения нет или оно другое - то двойным щелчком мыши на UpperFilters вызовите редактирование параметра и добавьте слово kbdclass в новой сроке. При этом в других строках параметра могут быть другие значения.

Будьте предельно внимательны при редактировании реестра. Любая ошибка может привести к фатальным последствиям для системы. Не правьте незнакомые параметры, не создавайте лишнего и не удаляйте ничего. Если лезть в реестр страшно - скачайте этот файл и запустите его и разрешите внести данные в реестр. Содержимой файла такое:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96B-E325-11CE-BFC1-08002BE10318}] "UpperFilters"="kbdclass"

К слову, антивирус Касперского "гадит" в этих ветках, подменяя устройства ввода, так что при удалении антивируса могут удалиться клавиатура и мышь. Всё для Вашей же безопасности, конечно.

Иногда причиной неопределения USB клавиатуры могут быть настройки USB портов в BIOS.

Если BIOS старый, то нужно проверить, включена ли в настройках BIOS опция "USB Keyboard Support - Enabled". В более свежих BIOS версиях должен быть включен пункт "Legacy USB Support - Enabled". Обычно они находятся в меню "Integrated perepherals" или "Advanced".

Различные BIOS по разному реагируют на настройку этого параметра. Теоретически, при выключенной опции USB-клавиатура вообще не должна работать никогда. Раньше так, собственно, и было. Однако, сейчас эта функция прекращает обслуживать USB клавиатуру только после завершения процедуры POST. Связано это с прогрессом - портов PS/2, которые раньше традиционно использовались для устройств ввода уже не найти на материнских платах, а BIOS всё больше становится похожим на полноценную ОС благодаря спецификации UEFI. Поэтому поддержка USB клавиатуры при прохождении POST и и загрузке UEFI BIOS полная, а затем, в зависимости от настроек, поддержка отключается. Некоторые старые BIOS позволяют явно указывать где будет осуществляться поддержка USB-клавиатуры - в BIOS или в ОС.

В настройках USB портов могут встретиться пункты меню XHCI Hand-off и EHCI Hand-off. Они отвечают за ручное или программное переключения портов в режимы USB 2.0 и USB 3.0. Для ОС Windows эти пункты должны быть отключены: Desable. Эти параметры так же могут повлиять на невозможность обнаружения USB-клавиатуры.

Так-же некоторые старые BIOS могут экзотично обрабатывать параметр Plug & Play OS (или PNP OS). Для любой современной операционной системы он должен быть YES. Иногда значение этого параметра, установленное в NO может не давать операционной системе обнаружить USB-клавиатуру. Это связано с предоставлением BIOS системе адресов, по которым находиться контроллер портов USB. В современных BIOS, в том числе и в UEFI BIOS такого параметра нет или он не влияет на отображаемое адресное пространство устройств.

Статьи по ремонту компьютеров

Компьютер не включается - что делать?

Компьютер перегревается

Как самому отремонтировать компьютер

www.denisoft.ru

Обучаем HID устройство (читай BT-клавиатуру) работать правильно / Habr

Приветствую, хабралюди!
На ДР, мне друзья подарили BT-клавиатуру. Маленькая, беленькая, симпатичная, Удобная!
Подключил ее к своему Android 2.3.5 (SGSII), стал с ее помощью лазить по меню, запускать программы, дошел до Вконтакте и решил написать сообщение… а вот переключить на русский язык не смог, но как оказалось позже, это еще были только цветочки! Но кое-что мне удалось. Интересно как?

Сейчас я уже многое понял, и не знаю с чего начать свой рассказ. Поэтому будет долго и скучно, но игра стоит свеч!

Имеем:

Клавиатура RAPOO E6300
Андроидофон Samsung Galaxy S II
Первые шаги

Начал я с того, что написал письмо в техподдержку клавиатуры, с вопросом: а не могли бы вы посодействовать с настройкой клавиатуры для Андроида? Получил, как и ожидалось, ласковый отказ: «Эта клавиатура сделана специально для iPad».

Пока ждал от них ответа, стал «прогугливать» тему взаимодействия HID устройств и Android. И среди массы хлама нашел две полезнейшие статьи:

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

Кому лень было читать статьи, кратко поясню:
На Вашем Android устройстве есть папка (кстати зависит от устройства, подробности есть в статье выше)
/system/usr
где расположены нужные нам каталоги
keylayout и keychars
в них размещаются файлы типа имя_клавиатуры.kl и имя_клавиатуры.kcm.bin соответственно.

Первый (обычный текстовый) отвечает за соответствие сигналов клавиатуры (Linux key code) сигналам Android (Android key code name) и выглядит как список из таких команд:

key 30 A WAKE
Расшифровка:key [scancode] [Android key] [Flags]
По-русски: если на клавиатуре нажали кнопку с кодом 30, то системе будет послана клавиша А, при этом устройство проснется.

Флаг WAKE заставляет устройство проснуться и отреагировать на нажатие буквой А.
А флаг WAKE_DROPPED заставляет только проснуться, т.е. чтобы нажать А, надо будет нажать ее снова.
В статье есть описание и других флагов.

Второй (скомпилированный из исходника бинарник) отвечает за комбинации клавиш вместе с Shift, Alt и т.п. Здесь уже идет таблица из разных вариантов, описывающих действия над Android key. В исходном виде он выглядит как:

key A {
label: 'A'
base: 'a'
shift, capslock: 'A'
ctrl, alt, meta: none
}

А скомпилирован он для ускорения работы и загрузки устройства.

Решаем что делать

Я написал в техподдержку клавиатуры снова, описав свои наблюдения. Но поддержки от них никакой не добился. Им это не интересно. Придется все делать самому.
Что, опять нужен root?

Для доступа в папку /system нужны права root. Значит нужно его получить и не потерять гарантию. Я долго искал способ и для себя один нашел. Ничего не нужно прошивать. Все можно вернуть назад. ИСПОЛЬЗУЙТЕ НА СВОЙ СТРАХ И РИСК! ВСЕ ТОЛЬКО ДЛЯ ОЗНАКОМЛЕНИЯ! НИКАКОЙ ОТВЕТСТВЕННОСТИ! Но для меня все сработало как надо.
Готовим файл

Чтобы туда что-то положить, нужно подготовить наш файл имя_клавиатуры.kl. И начать стоит с того, чтобы скачать исходный образец. В папку /system/usr/keylayout/ можно попасть и без root, скопировав оттуда нужный нам файл при помощи файлового менеджера. Я воспользовался ASTRO. Но можно воспользоваться консольным приложением adb.exe, поставляемом с Samsung KIES.
Команда adb pull remote local - copy file/dir from device
Первые грабли:
Определить имя нужного файла может быть затруднительно. Общий принцип названия файлов, согласно статье — Vendor_XXXX_Product_XXXX_Version_XXXX.kl или DEVICE_NAME.kl

Ну вот, нашли файл, скачали, сделали копию, открыли текстовым редактором типа notepad.
У меня файл назывался Broadcom_Bluetooth_HID.kl
Тааааак, и что тут у нас?

Все понятно, какие-то коды, какие-то кнопки, что к чему не особо понятно, но мы уже готовы к этому, потому что внимательно читали эту статью с начала и до сюда. А как же определить коды клавиш?
Вторые грабли:
Чтобы определить коды клавиш понадобится средство отладки или...
Просто заходим на маркет и находим то что нужно, не с первой попытки конечно. Я перепробовал 3-4 программы. Не все могли похвастаться нужной функцией — многие отображали только Android коды, которые уже прописаны в нашем файле. А нам нужны scancod'ы!
Получаем scancod'ы

Я «отксерил» свою клавиатуру на копире и ручкой стал подписывать коды, которые мне давала программа KeyEvent Display. Так я получил набор кодов, осталось переписать их в файл и назначить им правильные функции.
Редактируем файл

Открываем первую статью по клавиатурам и методично назначаем новые значения нашим кнопкам.
Получается что-то вроде этого:
# RAPOO E6300 keylayout file
# (c) Nix Pro Soft - Nikita Tratorov, 2012

key 172   HOME   WAKE_DROPPED
key 217   SEARCH   WAKE_DROPPED
key 165   MEDIA_PREVIOUS
key 164   MEDIA_PLAY_PAUSE
key 163   MEDIA_NEXT

key 114   VOLUME_DOWN
key 115   VOLUME_UP

key 1   BACK   WAKE_DROPPED
# key 183

key 41   GRAVE
key 2   1
key 3   2
key 4   3
key 5   4
key 6   5
key 7   6
key 8   7
key 9   8
key 10   9
key 11   0
key 12   MINUS
key 14   DEL

key 15   TAB
key 16   Q
key 17   W
key 18   E
key 19   R
key 20   T
key 21   Y
key 22   U
key 23   I
key 24   O
key 25   P
key 13   EQUALS
key 43   BACKSLASH

key 58   SHIFT_LEFT
key 30   A
key 31   S
key 32   D
key 33   F
key 34   G
key 35   H
key 36   J
key 37   K
key 38   L
key 39   SEMICOLON
key 28   ENTER   WAKE_DROPPED

key 42   SHIFT_LEFT
key 86   GRAVE
key 44   Z
key 45   X
key 46   C
key 47   V
key 48   B
key 49   N
key 50   M
key 51   COMMA
key 52   PERIOD
key 53   SLASH
key 103   DPAD_UP
key 54   SHIFT_RIGHT

key 56   ALT_LEFT
# key 125
# key 161
key 57   SPACE   WAKE_DROPPED
# key 126
key 26   LEFT_BRACKET
key 27   RIGHT_BRACKET
key 40   APOSTROPHE
key 105   DPAD_LEFT
key 108   DPAD_DOWN
key 106   DPAD_RIGHT

# keys for Android >=3.0

key 113   VOLUME_MUTE
key 111   FORWARD_DEL
key 1   ESCAPE   WAKE_DROPPED
key 59   F1
key 60   F2
key 61   F3
key 62   F4
key 63   F5
key 64   F6
key 65   F7
key 66   F8
key 67   F9
key 68   F10
key 87   F11
key 88   F12
key 58   CAPS_LOCK
key 29   CTRL_LEFT
key 104   PAGE_UP
key 93   PAGE_DOWN
Третьи грабли:
Не все кнопки будут работать с Вашей версией Android OS! Обратите внимание на колонку Version в первой статье про клавиатуры. Если вы используете те коду, которые предназначены для версий больше вашей, тогда с этого места клавиатура не будет работать.
Все кнопки, указанные после неправильной не будут функционировать.

Поэтому, для будущей совместимости, я в своем файле, клавиши предназначенные не для моей версии Android OS, перенес в конец. Как показала практика, в этом случае все работает и файл готов к переносу на другие версии ОС.

Закидываем файл в систему

Здесь не обойтись без консольной утилиты. Подключаем девайс по USB в режиме отладки и выполняем последовательно команды в консоли cmd.exe:
d:
cd D:\android-sdks\platform-tools
adb push Broadcom_Bluetooth_HID.kl /data/local/Broadcom_Bluetooth_HID.kl
adb shell
su
mount -o remount,rw -t ext4 /dev/block/mmcblk0p9 /system
rm /system/usr/keylayout/Broadcom_Bluetooth_HID.kl
cp /data/local/Broadcom_Bluetooth_HID.kl /system/usr/keylayout/Broadcom_Bluetooth_HID.kl
chmod 644 /system/usr/keylayout/Broadcom_Bluetooth_HID.kl
exit
exit
Четвертые грабли:
Папка /system находится на файловой системе в режиме только для чтения. Для того, чтобы туда писать, нужно перемонтировать систему в режиме RW. Но для этого, нужно определить точку монтирования и тип файловой системы при помощи простой команды mount.
После перезагрузки устройства, файловая система снова станет «только для чтения».
Пояснения к командам:

D:\android-sdks\platform-tools — это папка, в которой у меня находится adb.exe из SDK (у кого установлен только KIES — ищите в Program Files)
adb push Broadcom_Bluetooth_HID.kl... — это команда закачивает файл в папку. Папка /data/local/ выбрана не случайно. Это одна из немногих папок, в которую можно что-то положить, и из которой можно скопировать файл в другую файловую систему.
mount -o remount,rw -t ext4 /dev/block/mmcblk0p9 /system — перемонтирование системы. В интернете полно примеров как это делать, но там почему-то указаны совсем не те диски и файловая система. Пришлось подкорректировать.
остальное — удаление старого, копирование нашего файла и назначение ему правильных прав. Назначение прав очень важно!
Проверяем

Теперь нужно отсоединить USB (из-за него иногда выключается Bluetooth) и перезапустить соединение с клавиатурой:
  • Если клавиатура не хочет подсоединяться — значит вы забыли установить права, неправильно заполнили файл или положили файл не в ту папку (повторюсь, у каждого устройства они разнятся, читайте первую статью). В общем что-то с файлом.
  • Если клавиатура подключилась, но половина клавиш не работает, значит с того места, где она не работает, вы вставили неподдерживаемый вашей версией код. Переместите его в конец файла.
Заработало!

Поздравляю! По-другому и быть не могло! Вы молодец! Только… как же на русский-то перейти?
Не долго гугля, я нашел простой ответ — нужна софтварная клавиатура, поддерживающая аппаратную. Таких немного. Идеальная, на мой взглад, на сегодня — ruKeybord
Устанавливаем, настраиваем, в раскладках устанавливаем аппаратную клавиатуру вместо qwerty и т.п.
Теперь можно переключать раскладку через Alt+Shift (UPD: или Shift+Space). И флажок показывается.

Кто еще не в курсе, чтобы быстро переключаться между клавиатурами, подержите палец на любом поле ввода и выберите из выпавшего меню «Режим ввода».

Итоги

Как ни старался, но заставить заработать все кнопки, подобно компьютеру, на 2.3.5 невозможно. Но скоро я обновлюсь до Android OS 4 и новые кнопки заработают. На первой фотографии я сижу в putty и редактирую сайт. Очень не хватает кнопки Ctrl. Очень жду обновления ОС. Доволен результатом.
Done!

Спасибо за внимание!

habr.com

Программирование простейших USB-устройств на Delphi | Мир ПК

Но ведь мало только физически подсоединить устройство к компьютеру, нужно еще и наладить обмен данными между ними. Как же выбрать порт и организовать подключение? Несколько лет назад стандартным решением было использование COM-порта. Кстати, до сих пор различные специалисты доустанавливают на промышленные компьютеры по 8, по 16, а то и по 32 COM-порта (есть целая категория различных PCI-плат расширения последовательных портов, контроллеров и т. д.). Таким образом, если нужно подключить несколько внешних устройств с интерфейсом RS-232, могут потребоваться дорогие адаптеры и экзотические платы расширения, которые по старой традиции неделями плывут в Россию на пароходах. Кстати, название обычного переходника «адаптер DB9m/DB25f» у менеджера компьютерного магазина может вызвать разве что раздражение.

Что такое HID-устройство

Сейчас практически все устройства подключаются к компьютеру через USB-интерфейс. Поэтому во многих новых ПК COM-порт отсутствует вообще.

USB-интерфейс — типовое решение по сопряжению нового внешнего устройства с компьютером, точнее, это HID-интерфейс, базирующийся на протоколе USB 1.1.

Хотя многие и считают, что HID-интерфейс (Human Interface Device) предназначен исключительно для клавиатуры, мыши и джойстика, он годится для множества решений, связанных с сопряжением внешних устройств и компьютера.

Если пользователю необходимо производить низкоскоростной обмен данными (до 64 кбит/c) и при этом желательно сократить время на утомительной разработке собственных драйверов, то ему вполне подойдет HID. На выходе же получится простое и вполне современное решение на базе стандартного программного USB-интерфейса с гарантированной поддержкой на всех распространенных программных платформах.

Свойства HID-устройства

С точки зрения организации программной поддержки HID-устройства, все выглядит достаточно привлекательно: для работы под управлением Windows можно быстро создавать понятный компактный код на базе готовых проверенных алгоритмов. При этом у разработчика останется масса времени на реализацию собственного протокола обмена данными верхнего уровня, поскольку необходимый уровень абстрагирования уже организован за счет HID-протокола (см. таблицу). Кроме того, программисту легко проводить отладку написанного протокола обмена (разумеется, при наличии работающего HID-устройства) — благодаря относительной жесткости самого протокола достаточно просто разработать программу поддержки устройства компьютером. Еще бы! Массу работы уже взял на себя создатель HID-устройства.

Организация обмена данными между HID-устройством и компьютером

Чтобы описать взаимодействие HID-устройства с компьютером, употребим термин «хост». В данном случае под ним понимается управляющее устройство в общей физической архитектуре взаимодействия по USB-протоколу. Так, все порты в компьютере — хосты. К ним можно подключать различные USB-устройства (флэшки, мыши, веб-камеры, фотоаппараты и проч.), которые хоста не имеют. Хост обеспечивает обнаружение, подключение, отключение, конфигурирование устройств, а также сбор статистики и управление энергопотреблением.

HID-устройство может само установить частоту опроса, во время которого выясняется наличие в нем каких-либо новых данных. Значит, даже на таком низком уровне программист может довериться системе, поскольку частота опроса и другие параметры обмена данными должны быть заранее заданы в программе контроллера HID-устройства. Этим протокол HID отличается от общего описания USB 1.1 или USB 2.0, в котором нет жестких требований к организации протокола. Однако при специфических задачах, требующих повышенного уровня безопасности, может оказаться довольно сложно избавиться от циклических опросов, когда постоянно передаются почти одни и те же блоки данных.

Особенности программирования HID-устройств

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

В Windows за доступ к HID-устройствам отвечает системная служба HidServ. Подробнее о функциях запросов к HID-устройствам и других особенностях работы с HID-драйвером рассказывается в работе П. В. Агурова «Интерфейс USB. Практика использования и программирования» (СПб.: БХВ-Петербург, 2005).

Программирование HID-устройств на «верхнем уровне»

Нелегкую жизнь «прикладных» программистов, работающих на Паскале, облегчает проверенный модуль HID. PAS, программная оболочка для hid. dll (Hid User Library — как указано в свойствах файла). В комментариях к файлу сообщается, что в основе его лежат модули hidsdi.h и hidpi.h корпорации Microsoft. А сам файл HID. PAS — часть пакета JEDI (http://jvcl.sourceforge.net ).

Для работы с HID-устройством в среде Delphi for win32 применяется компонент TJvHidDeviceController, представляющий собой удобный глобальный менеджер для доступа к HID-устройствам. А уже на его базе можно получить объектный экземпляр для работы с конкретным устройством.

Основные свойства и события компонента TJvHidDeviceController

Рассмотрим компонент TJvHidDeviceController более подробно. Событие OnArrival срабатывает на поступление (подключение) в систему HID-устройства, доступ к устройству предоставляется в обработчике этого события через экземпляр класса TJvHidDevice. Простое событие OnDeviceChange реагирует на изменение состояния устройства, оно только сигнализирует об изменениях в системе. Событие OnDeviceData срабатывает при поступлении данных от одного из HID-устройств и передает обработчику следующее: HidDev: TJvHidDevice; — устрой-ство, от которого были получены данные;

 

Событие OnDeviceDataError уведомляет об ошибке передачи данных, передавая в процедуру обработки параметры HidDev: TJvHidDevice; — HID-устройство и Error: DWORD; — код ошибки. Событие OnDeviceUnplug уведомляет об извлечении устройства из списка установленных в системе. Типы обработчиков событий на Plug и Unplug одинаковы (в исходном тексте: TJvHidUnplugEvent = TJvHidPlugEvent). В обработчик передается объект класса TJvHidDevice, соответствующий HID-устройству.

Для последовательного перечисления имеющихся в системе HID-устройств по вызову метода Enumerate предназначено событие OnEnumerate, т. е. в обработчике события найденные устройства последовательно передаются в виде объектов. Это событие принудительно инициируется методом Enumerate, использующимся для «проведения» имеющихся HID-устройств через обработчик, например при ревизии состояния HID-устройств по инициативе хоста (компьютера).

Событие OnRemoval срабатывает на физическое извлечение устройства из системы и имеет тот же тип обработчика TJvHidUnplugEvent, что и для OnDeviceUnplug. Функция CountByProductName выдает количество устройств, удовлетворяющих указанному в аргументе имени продукта, а CountByVendorName — указанному в аргументе имени производителя.

Основные свойства и события класса TJvHidDevice

Класс TJvHidDevice — виртуальное представление отдельно взятого HID-устройства. Новый объект этого класса можно получить, как было уже сказано, из события OnArrival или OnEnumerate. Функционал классов TJvHidDeviceController и TJvHidDevice частично дублируется, поскольку в первом из них интегрированы общий инструментарий для работы с набором имеющихся в системе HID-устройств и механизм доступа к одному из них. Устройство можно однозначно идентифицировать по свойствам SerialNumber, ProductName и VendorName. Чтобы получить сведения о поступлении данных с применением такого объекта, можно воспользоваться событием OnData. Отсылка данных ведется через метод WriteFile (в строгом смысле — через функцию). WriteFile — это оболочка системной функции WriteFile (kernel32).

Чтобы проконтролировать факт извлечения устройства, следует присвоить свой обработчик событию OnUnplug. Перед началом обмена данными с HID-устройством нужно удостовериться в самой возможности такого обмена с помощью HasReadWriteAccess. В этом классе на возникновение ошибки обмена данными даже есть отдельное событие OnDataError.

А теперь рассмотрим фрагменты кода из «живого» проекта, реализующего тестовое клиентское приложение для организации обмена данными с нестандартным устройством — пластиковыми чип-картами на базе HID. В борьбе за реализм автор взял на себя смелость не выкидывать из листингов «лишние» технологические обвязки кода.

Метод ScanDevices (листинг 1) предназначен для инициирования процесса поиска в системе необходимого HID-устройства. Большая часть кода, за исключением вызова метода Enumerate, необязательна и обеспечивает гибкость приложения, например, для того, чтобы в эту же тестовую программу можно было добавить возможность работы по интерфейсу, отличному от HID. Метод AddError выводит в окно отладочную информацию в процессе работы программы.

В листинге 2 приведен обработчик события OnEnumerate для поиска необходимого внешнего устройства. Для простоты будем считать, что программа может работать только с одним устройством нужного ей типа.

 

Прежде чем рассматривать дальнейшую реализацию проекта, следует немного рассказать о принятом формате обмена данными верхнего уровня, т. е. о структуре, призванной быть посредником между методами приема-передачи данных и конкретной решаемой прикладной задачей. Дело в том, что здесь разработчику предоставляется возможность реализовать свои творческие способности. Вернее, разработчикам, потому что процесс создания нового протокола очень часто бывает двусторонним, и при этом первую скрипку играет тот, кому труднее реализовывать алгоритм обмена. В общем, каким бы ни был протокол обмена, всегда приятно делать каждую программную сущность максимально наглядной и самодостаточной, пусть даже в ущерб некоторым общепринятым традициям. Ибо лучшее решение — то, которое будет реализовано в сжатые сроки с минимальной привязкой к программной среде и с большими возможностями дальнейшего развития. На основе этих принципов был создан протокол обмена верхнего уровня, где главное понятие — «команда». Из листинга 3 видно, насколько автор любит строковые данные, не раз спасавшие его при отладке программных модулей. Как же замечательно, что у нас вообще есть тип String! Все команды протокола делятся на категории (классы), внутри которых существует код команды, однозначно характеризующий ее назначение. Параметр edParam служит для отсылки данных в устройство, а параметр edAnswerData содержит в себе полученные от устройства данные. Строковый тип описанных членов записи позволяет свободно и наглядно манипулировать данными в формате HEX-строки. И что самое приятное, формат описанной записи идеологически стоит где-то посередине между ее непосредственным назначением и различными формами ее представления (INI, HEX, XML и т. д.)

Выполнение команды, т. е. отсылка данных в устройство, реализовано с применением отсылки пакетов данных длиной 8 байт (листинг 4). Эта длина — не единственное решение, такой выбор продиктован требованиями протокола верхнего уровня и в каждом конкретном случае может быть другим. Это, что называется, дело вкуса. Странный флаг IsUSBMode в методе ExecuteCommand (листинг 5 на «Мир ПК-диске») оставлен как напоминание о том, что вместо работы с USB нам может потребоваться использовать COM-порт или какой-то другой интерфейс. В начале отсылаемой группы данных в устройство передается синхросерия произвольно выбранного формата (например, 3E3E3E2B), сообщающая устройству, что у него на входе вполне легальные данные. Напомню, что в данном случае речь идет не столько о HID, сколько о специфическом протоколе верхнего уровня, идеологически оторванном от «железа» и предназначенном для решения особых прикладных задач.

В обработчике GetDataExecutor полученных от устройства данных (пакет по 8 байт) использовано специально созданное событие OnNewInputData для передачи первично обработанных данных на дальнейшую обработку, причем с указанием их старого и нового значений (листинг 6 на «Мир ПК-диске»). Таким образом, события поступления необработанных данных и указание на дальнейшую обработку развязываются, позволяя добавлять какой-то специфический алгоритм предупреждения на раннем этапе ошибочной, повторной или ненужной входной информации.

Представленные здесь примеры работы с HID-устройством иллюстрируют общую идею статьи — относительную простоту программирования нестандартных HID-устройств средствами Delphi.

www.osp.ru

Клавиатура компьютера

Опубликовано декабря 15, 2010 в HID-устройства, Периферия

И так, клавиатура компьютера! В классификации компьютерной периферии HID-устройства (Human Interface Devices — интерфейсные устройства «компьютер — человек») занимают особое место. Ведь без клавиатуры и мыши работа с современным ПК просто немыс­лима.

Клавиатура компьютера является основным устройством ПК, используемым для ввода данных, а также для управления интерфейсом ОС и различных приложений. Одной из наиболее важных характеристик, которой должна обладать  клавиатура компьютера, так это тип устанавливаемых в ней клавиш.

Клавиатура компьютера и её типы

В настоящее время в компьютерных клавиатурах, предназначенных для домашнего и офисного использования, применяются клавиши трех типов: механи­ческие, полумеханические и мембранные.

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

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

3. В мембранных клавишах используются контактные площадки из токопроводящего полимерного материала, а роль упругого элемента выполняет прочная полимерная пленка, сформованная в виде небольшого купола. С точки зрения массового производства мембранные клавиши являются наиболее технологичным и недорогим решением. Именно поэтому подавляющее большинство ныне выпускаемых компьютерных клавиатур изготавливается по этой техно­логии.

По надежности и долговечности мембранная клавиатура компьютера уступают механическим и полумеханическим конструкциям, однако на современном этапе своего развития мембранная технология способна удовлетворить запросы подавляющего большин­ства пользователей: в среднем мембранные клавиши выдерживают не менее 10 млн нажатий. Дополнительным преимуществом мембранных клавиатур по сравнению с механическими и полумеханическими конструкциями является более высокая устойчивость к загрязнению и воздействию влаги.

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

Клавиатура компьютера: стандарты

Фактическим стандартом для клавиатур компьютера, используемых с настольными ПК, стала схема со 101 или 104 клавишами. В подобных моделях клавиши, как правило, раз­делены на четыре группы. Основная группа содержит клавиши для набора букв, цифр, знаков препинания и различных символов, клавиши-модификаторы (Shift, Ctrl, Alt), Start и Menu1, а также Tab (табулятор), Caps Lock (фиксация прописных букв), Enter (ввод) и Backspace (забивка). Клавиши, используемые для набора букв, расположены в соответствии с раскладкой ЙЦУКЕН (QWERTY). Набор клавиш- модификаторов продублирован: Shift, Ctrl, Alt и Start имеются как с правой, так и с левой стороны основной группы.

Над основной группой расположены функциональные клавиши (F1... F12) — их назначение может меняться в зависимости от настроек ОС и используемого при­ложения.

Клавиши Start и Menu устанавливаются в 104-клавишных моделях. Справа от основной группы находятся служебные клавиши, используемые для управления перемещением курсора, пролистыванием и пр.

И наконец, крайняя правая группа называется цифровой секцией (Num Pad). В нее входят клавиши для набора цифр, десятичного разделителя, знаков основных арифметических операций, а также Enter (ввод) и Num Lock (служит для переклю­чения режима работы цифровой секции между числовым и навигационным режи­мами). Текущий режим работы цифровой секции можно определить по состоянию индикатора Num Lock. При отключении режима Num Lock клавиши цифровой сек­ции (соответствующие цифрам и десятичному разделителю) дублируют функции части служебных клавиш.

Клавиатура компьютера: ноутбуки

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

С начала 1980-х и вплоть до середины 1990-х годов внешний вид клавиатур компьютера прак­тически не менялся. В середине 1990-х годов была создана новая конструкция корпуса клавиатуры, разработанная с учетом анатомии человека и эргономических требований. Отличительной особенностью подобной конструкции является изо­гнутая форма корпуса: клавиши основной группы разделены на две секции (соот­ветственно для левой и правой руки), расположенные под определенным углом друг к другу. По замыслу создателей такая форма клавиатуры компьютера позволяет снизить нагрузку на мышцы рук при продолжительной работе за компьютером, а также свести к минимуму вероятность возникновения профессиональных заболеваний (в частности, растяжения кисти). Одной из первых моделей эргономичных клавиа­тур стала Microsoft Natural Keyboard Elite. Вскоре после ее появления практически все известные производители клавиатур компьютера выпустили подобные модели, внеся в них те или иные изменения. К примеру, появились модели с регулируемым расстоянием между секциями, предназначенными для левой и правой руки, и даже клавиатуры, которые можно разъединить на две части.

Однако, как показала практика, далеко не все пользователи оказались способны­ми адаптироваться к работе с клавиатурами новаторской конструкции. Отчасти это было вызвано тем, что многие осваивали технику печати на клавиатурах традиционной «прямой» конструкции, а то и вообще на печатных машинках. Кроме того, комфортная работа с клавиатурами компьютера эргономичной конструкции возможна лишь при условии владения «слепым» методом набора. Так или иначе, но к концу 1990-х годов мода на эргономичные клавиатуры резко пошла на убыль.

Клавиатура компьютера: специальные кнопки

Следующий этап развития клавиатуры компьютера был отмечен внедрением дополнительных функциональных кнопок и прочих органов управления. Многие современные модели клавиатур оснащены специальными кнопками, позволяющими управлять включением/выключением питания и энергосберегающих режимов ПК, активи­зировать часто используемые функции ОС (калькулятор, окно Проводника и пр.), управлять программными медиапроигрывателями и т. д.

В ряде современных моделей клавиатур имеются дополнительные органы управ­ления: сенсорные панели, трекболы, колесики прокрутки, вращающиеся указатели, многопозиционные указатели типа «плоский джойстик» и т. п.

Помимо полноразмерных 101- или 104-клавишных моделей, в настоящее время выпускаются и компактные модели без цифровой секции. Для удобства работы с бухгалтерскими, статистическими и расчетными программами производятся отдельные секции цифровых клавиатур, которые подключаются к порту USB или PS/2 и могут функционировать параллельно с основной клавиатурой компьютера. Обычно в таких устройствах предусмотрены программируемые кнопки, которые можно настроить на вызов часто используемых функций.

В 2002 году появилась первая гибкая клавиатура компьютера, рассчитанная на подклю­чение к настольным и портативным ПК . Одними из первых подобную продукцию начали производить компании Flexboard и Plycon. Гибкую клавиатуру можно легко скатать в довольно компактный рулон, а кроме того, подобные уст­ройства обладают высокой влаго- и пылезащищенностью. Это позволяет даже при сильном загрязнении легко очистить такую клавиатуру компьютера, просто промыв ее под струей воды. Благодаря данным качествам гибкие клавиатуры идеально подходят для оснащения компьютеров, устанавливаемых в научных лабораториях, медицин­ских учреждениях, промышленных цехах и т. п

Наиболее распространенными интерфейсами, используемыми в настоящее время для подключения клавиатур к ПК, являются PS/2 и USB. В последние годы зна-чительно возросла популярность беспроводных решений. Пятиконтактный разъем DIN, применявшийся для подключения клавиатур в системных платах формфак­тора AT, в настоящее время не используется. Для обеспечения максимальной совместимости клавиатуры компьютера с различными типами ПК выпускаются специальные переходники, позволяющие подключать USB-клавиатуры к порту PS/2 (и на­оборот).

dammlab.com

[решено] hid совместимое устройство вместо клавиатура hid

Вопрос: [решено] Прошу, помогите устранить ошибку с клавиатурой.. Нету уже сил..


Короче при загрузке компа выскакивает вот такая штука

Девайс менеджер я сам открыл чтобы показать что там пишет сейчас в "клавах"..
Клава Logitech G11, дрова на её не нужно ставить, там только ПО в трее для активирования функциональных кнопок.
Все работало отлично, всегда, а почсле чего это произошло то я понять не могу.
В новой винде пашет, но есть ризон восстанавливать работоспособность старой, мне нужна она.
Что проделал:
1. Вирусов НЕТ.

2. chkdsk /r c:

3. sfc /scannow (sfc файлы менял, были подозрения на них... sfc.dll и тд..)

4. cmd - set devmgr_show_nonpresent_devices=1 - devmgmt.msc - "показать скрытые пункты" - удалил все что было серым, не активным, все что отсутствует в системе.
Все что внутри ветки Keyboards пришлось чистить вручную через реестр, ибо в девайсменеждере не удаляется. Выбивает ту же табличку что и при каждой загрузке винды. И кстате два раза это происходит. Их две просто

5. Перестанавливал ПО на клаву, хотя оно не причем ибо без её тоже самое..

setupapi.log - попытка удалить серый пункт, один из клавиатур


[SetupAPI Log]
Версия ОС = 5.1.2600 Service Pack 3
Платформа = 2 (NT)
Пакет обновления = 3.0
Комплект = 0x0100
Тип продукта = 1
Архитектура = x86
[2012/04/28 18:01:39 2816.25]
#-198 Обработана командная строка: "C:\WINDOWS\system32\mmc.exe" "C:\WINDOWS\system32\devmgmt.msc"
#-147 Загрузка модуля установщика классов для "Keyboards".
#E360 Неподписанный или неправильно подписанный файл "C:\WINDOWS\system32\SysClass.Dll" для драйвера "Keyboards" будет установлен (Политика=Игнорировать). Ошибка 0x800b0100: В этом объекте нет подписи.
#E144 Не удалось загрузить модуль "C:\WINDOWS\system32\SysClass.Dll". Ошибка 127: Не найдена указанная процедура.
Windows не удается загрузить программу для установки Keyboard. Обратитесь к поставщику. Ошибка 127: Не найдена указанная процедура.

setupapi.log - "Обновление конфигурации оборудования" кнопочкой.


[SetupAPI Log]
Версия ОС = 5.1.2600 Service Pack 3
Платформа = 2 (NT)
Пакет обновления = 3.0
Комплект = 0x0100
Тип продукта = 1
Архитектура = x86
[2012/04/28 18:05:03 516.3 Driver Install]
#-019 Поиск идентификаторов аппаратуры: hid\vid_046d&pid_c225&rev_0171&col01,hid\vid_046d&pid_c225&col01,hid_device_system_keyboard,hid_devi ce_up:0001_u:0007,hid_device
#-198 Обработана командная строка: C:\WINDOWS\system32\services.exe
#I022 Найдено "HID_DEVICE_SYSTEM_KEYBOARD" в C:\WINDOWS\inf\keyboard.inf; Устройство: "Клавиатура HID"; Драйвер: "Клавиатура HID"; Поставщик: "Microsoft"; Изготовитель: "(Стандартные клавиатуры)"; Секция: "HID_Keyboard_Inst"
#I023 Действительная секция установки: [HID_Keyboard_Inst.NT]. Ранг: 0x00001002. Дата драйвера: 07/01/2001.
#I022 Найдено "HID_DEVICE" в C:\WINDOWS\inf\input.inf; Устройство: "HID-совместимое устройство"; Драйвер: "HID-совместимое устройство"; Поставщик: "Microsoft"; Изготовитель: "(стандартные системные устройства)"; Секция: "HID_Raw_Inst"
#I023 Действительная секция установки: [HID_Raw_Inst.NT]. Ранг: 0x00001004. Дата драйвера: 07/01/2001.
#-147 Загрузка модуля установщика классов для "Keyboards".
#E358 Неподписанный или неправильно подписанный файл "C:\WINDOWS\system32\SysClass.Dll" для драйвера "Keyboards" заблокирован (серверная установка). Ошибка 0x800b0100: В этом объекте нет подписи.
Windows не удается загрузить программу для установки Keyboard. Обратитесь к поставщику. Ошибка 0x800b0100: В этом объекте нет подписи.
[2012/04/28 18:05:04 4076.2]
#-199 Выполнение "C:\WINDOWS\system32\rundll32.exe" с командной строкой: rundll32.exe newdev.dll,ClientSideInstall \\.\pipe\PNP_Device_Install_Pipe_0.{B01B5C7B-50C8-4BA5-85C0-51FAC5F1F4DF}
#I060 Установка выбранного драйвера.
#-019 Поиск идентификаторов аппаратуры: hid\vid_046d&pid_c225&rev_0171&col01,hid\vid_046d&pid_c225&col01,hid_device_system_keyboard,hid_devi ce_up:0001_u:0007,hid_device
#I022 Найдено "HID_DEVICE_SYSTEM_KEYBOARD" в C:\WINDOWS\inf\keyboard.inf; Устройство: "Клавиатура HID"; Драйвер: "Клавиатура HID"; Поставщик: "Microsoft"; Изготовитель: "(Стандартные клавиатуры)"; Секция: "HID_Keyboard_Inst"
#I023 Действительная секция установки: [HID_Keyboard_Inst.NT]. Ранг: 0x00001002. Дата драйвера: 07/01/2001.
#I022 Найдено "HID_DEVICE" в C:\WINDOWS\inf\input.inf; Устройство: "HID-совместимое устройство"; Драйвер: "HID-совместимое устройство"; Поставщик: "Microsoft"; Изготовитель: "(стандартные системные устройства)"; Секция: "HID_Raw_Inst"
#I023 Действительная секция установки: [HID_Raw_Inst.NT]. Ранг: 0x00001004. Дата драйвера: 07/01/2001.
#-147 Загрузка модуля установщика классов для "Keyboards".
#E360 Неподписанный или неправильно подписанный файл "C:\WINDOWS\system32\SysClass.Dll" для драйвера "Keyboards" будет установлен (Политика=Игнорировать). Ошибка 0x800b0100: В этом объекте нет подписи.
#E144 Не удалось загрузить модуль "C:\WINDOWS\system32\SysClass.Dll". Ошибка 127: Не найдена указанная процедура.
Windows не удается загрузить программу для установки Keyboard. Обратитесь к поставщику. Ошибка 127: Не найдена указанная процедура.
[2012/04/28 18:05:08 516.7 Driver Install]
#-019 Поиск идентификаторов аппаратуры: hid\vid_046d&pid_c221&rev_0190&mi_00,hid\vid_046d&pid_c221&mi_00,hid_device_system_keyboard,hid_devi ce_up:0001_u:0006,hid_device
#-198 Обработана командная строка: C:\WINDOWS\system32\services.exe
#I022 Найдено "HID_DEVICE_SYSTEM_KEYBOARD" в C:\WINDOWS\inf\keyboard.inf; Устройство: "Клавиатура HID"; Драйвер: "Клавиатура HID"; Поставщик: "Microsoft"; Изготовитель: "(Стандартные клавиатуры)"; Секция: "HID_Keyboard_Inst"
#I023 Действительная секция установки: [HID_Keyboard_Inst.NT]. Ранг: 0x00001002. Дата драйвера: 07/01/2001.
#I022 Найдено "HID_DEVICE" в C:\WINDOWS\inf\input.inf; Устройство: "HID-совместимое устройство"; Драйвер: "HID-совместимое устройство"; Поставщик: "Microsoft"; Изготовитель: "(стандартные системные устройства)"; Секция: "HID_Raw_Inst"
#I023 Действительная секция установки: [HID_Raw_Inst.NT]. Ранг: 0x00001004. Дата драйвера: 07/01/2001.
#-147 Загрузка модуля установщика классов для "Keyboards".
#E358 Неподписанный или неправильно подписанный файл "C:\WINDOWS\system32\SysClass.Dll" для драйвера "Keyboards" заблокирован (серверная установка). Ошибка 0x800b0100: В этом объекте нет подписи.
Windows не удается загрузить программу для установки Keyboard. Обратитесь к поставщику. Ошибка 0x800b0100: В этом объекте нет подписи.
[2012/04/28 18:05:15 4076.5]
#-199 Выполнение "C:\WINDOWS\system32\rundll32.exe" с командной строкой: rundll32.exe newdev.dll,ClientSideInstall \\.\pipe\PNP_Device_Install_Pipe_0.{B01B5C7B-50C8-4BA5-85C0-51FAC5F1F4DF}
#I060 Установка выбранного драйвера.
#-019 Поиск идентификаторов аппаратуры: hid\vid_046d&pid_c221&rev_0190&mi_00,hid\vid_046d&pid_c221&mi_00,hid_device_system_keyboard,hid_devi ce_up:0001_u:0006,hid_device
#I022 Найдено "HID_DEVICE_SYSTEM_KEYBOARD" в C:\WINDOWS\inf\keyboard.inf; Устройство: "Клавиатура HID"; Драйвер: "Клавиатура HID"; Поставщик: "Microsoft"; Изготовитель: "(Стандартные клавиатуры)"; Секция: "HID_Keyboard_Inst"
#I023 Действительная секция установки: [HID_Keyboard_Inst.NT]. Ранг: 0x00001002. Дата драйвера: 07/01/2001.
#I022 Найдено "HID_DEVICE" в C:\WINDOWS\inf\input.inf; Устройство: "HID-совместимое устройство"; Драйвер: "HID-совместимое устройство"; Поставщик: "Microsoft"; Изготовитель: "(стандартные системные устройства)"; Секция: "HID_Raw_Inst"
#I023 Действительная секция установки: [HID_Raw_Inst.NT]. Ранг: 0x00001004. Дата драйвера: 07/01/2001.
#-147 Загрузка модуля установщика классов для "Keyboards".
#E360 Неподписанный или неправильно подписанный файл "C:\WINDOWS\system32\SysClass.Dll" для драйвера "Keyboards" будет установлен (Политика=Игнорировать). Ошибка 0x800b0100: В этом объекте нет подписи.
#E144 Не удалось загрузить модуль "C:\WINDOWS\system32\SysClass.Dll". Ошибка 127: Не найдена указанная процедура.
Windows не удается загрузить программу для установки Keyboard. Обратитесь к поставщику. Ошибка 127: Не найдена указанная процедура.

Я много игрался с правами, но до реестра как бы я понимаю не имеют отношения права на файл. систему.
Я даже по setupapi нашел файл sysclass.dll который естесно не помог..

Восстановление системы отключено.

Я вас умоляю, помогите.. Говорите всё что нужно из системы, предоставлю через минуту.

forundex.ru

Что такое клавиатура ➤ Lezhnyov.ru

Клавиатура — это часть компьютерного оборудования, используемая для ввода текста, символов и других команд на компьютер или подобное устройство.

Несмотря на то, что клавиатура является внешним периферийным устройством в настольной системе (она находится вне корпуса основного компьютера ) или является «виртуальной» на планшетном ПК, она является неотъемлемой частью всей компьютерной системы.

Microsoft и Logitech являются, пожалуй, самыми популярными физическими производителями клавиатуры, но многие другие производители оборудования также производят их.

Физическая характеристика клавиатуры

Современные компьютерные клавиатуры были смоделированы и по-прежнему очень похожи на классические клавиатуры пишущей машинки. Многие различные раскладки клавиатуры доступны по всему миру (например, Dvorak и JCUKEN ), но большинство клавиатур имеют тип QWERTY .

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

Типы соединений клавиатуры

Многие клавиатуры являются беспроводными, общаются с компьютером через Bluetooth или RF-приемник.

Проводная клавиатура подключается к материнской плате через USB кабель, используя USB Type A разъема . Старые клавиатуры подключаются через соединение PS / 2 . Клавиатуры на ноутбуках, конечно, интегрированы, но технически считаются «проводными», так как они подключены к компьютеру.

Примечание. Для беспроводной и проводной клавиатуры требуется специальный драйвер устройства для использования с компьютером. Драйверы для стандартных, непередовых клавиатур обычно не нужно загружать, поскольку они уже включены в операционную систему .

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

Как и планшеты, большинство современных мобильных телефонов используют экранные клавиатуры для максимального увеличения размера экрана; клавиатура может использоваться, когда это необходимо, но тогда это же пространство экрана может использоваться для других вещей, таких как просмотр видео. Если на телефоне есть клавиатура, иногда это скрытая клавиатура, которая лежит за экраном. Это и максимизирует доступное пространство экрана, и позволяет использовать привычную физическую клавиатуру.

Ноутбуки и нетбуки имеют встроенные клавиатуры, но, как и планшеты, могут быть подключены внешние клавиатуры с помощью USB.

Горячие клавиши клавиатуры

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

Ключи модификатора

Некоторые ключи, с которыми вам следует ознакомиться, называются клавишами-модификаторами . Вероятно, вы увидите некоторые из них в руководствах по устранению неполадок; Control, Shift, и Alt клавиши клавиш — модификаторов. Клавиши Mac используют клавиши Option и Command в качестве клавиш-модификаторов.

В отличие от обычного ключа, такого как буква или номер, ключи модификатора изменяют функцию другого ключа. Например, регулярная функция ключа 7 состоит в том, чтобы ввести номер 7, но если вы одновременно удерживаете Shift и 7 клавиш, появляется знак амперсанда (&).

Некоторые из эффектов ключа-модификатора можно увидеть на клавиатуре как клавиши, которые имеют два действия, например, ключ 7 . Такие клавиши имеют две функции, где верхнее действие активируется клавишей Shift .

Ctrl-C — это комбинация клавиш, с которой вы, вероятно, знакомы. Он используется для копирования чего-то в буфер обмена, чтобы вы могли использовать комбинацию Ctrl-V для вставки.

Другим примером комбинации клавиш- модификаторов является Ctrl-Alt-Del . Функция этих клавиш не так очевидна, потому что инструкции по ее использованию не выложены на клавиатуре, как у клавиши 7 . Это типичный пример того, как использование клавиш-модификаторов может привести к эффекту, который ни один из ключей не может выполнять самостоятельно, независимо от других.

Alt-F4 — еще одна комбинация клавиш. Это мгновенно закрывает окно, которое вы в настоящее время используете. Независимо от того, находитесь ли вы в интернет-браузере или просматриваете изображения на своем компьютере, эта комбинация мгновенно закрывает ту, на которой вы сосредоточены.

Windows Key

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

Win-D является одним из примеров использования этого ключа , чтобы быстро показать / скрыть рабочий стол. Win-E является еще одним полезным, который быстро открывает Windows Explorer.

В некоторых других примерах Microsoft имеет большой список сочетаний клавиш для Windows. Win + X , вероятно, мой любимый.

Примечание. Некоторые клавиатуры имеют уникальные клавиши, которые не работают так же, как традиционная клавиатура. Например, игровая клавиатура TeckNet Gryphon Pro включает в себя 10 клавиш, которые могут записывать макросы.

Изменение параметров клавиатуры

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

Вы можете внести дополнительные изменения на клавиатуре с помощью стороннего программного обеспечения, такого как SharpKeys . Это бесплатная программа, которая редактирует реестр Windows для переназначения одного ключа на другой или вообще отключает одну или несколько ключей.

SharpKeys чрезвычайно полезен, если вам не хватает клавиши клавиатуры. Например, если у вас нет клавиши Enter , вы можете переназначить клавишу Caps Lock (или клавишу F1 и т. Д.) На функцию Enter , существенно удалив возможности первого ключа, чтобы восстановить использование последнего. Он также может использоваться для сопоставления клавиш с веб-элементами управления, такими как Refresh, Back и т. Д.

Microsoft Keyboard Layout Creator является еще один бесплатный инструмент , который позволяет быстро изменить расположение клавиатуры.

lezhnyov.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *