Драйвер фильтр USB мыши

Тема в разделе "WASM.NT.KERNEL", создана пользователем MoKC0DeR, 21 июн 2007.

  1. MoKC0DeR

    MoKC0DeR New Member

    Публикаций:
    0
    Регистрация:
    13 ноя 2003
    Сообщения:
    136
    Адрес:
    Russia
    есть замечательная статья с примером для PS/2 мыши - http://www.wasm.ru/article.php?article=drvw2k16
    1. нет ли исходников (asm/C) для usb мышки ?
    2. Если нет, то что необходимо доработать чтоб появилась возможность у USB мыши реализовать следующий функционал: при долгом удержании кнопки компьютер шла комнада что кнопку отпустили потом нажали снова ?
     
  2. MoKC0DeR

    MoKC0DeR New Member

    Публикаций:
    0
    Регистрация:
    13 ноя 2003
    Сообщения:
    136
    Адрес:
    Russia
    Вопрос задан не в том разделе ?
    Не правильно оформлен ?
    Есть хоть какие-то варианты ?
     
  3. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    стандартный вариант - посмотреть как это реализовано в различных ОСях.
     
  4. Four-F

    Four-F New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2002
    Сообщения:
    1.237
    В текущей реализации стек для PS/2 мыши используется и для USB мышей. Но добавлен отдельный слой, состоящий из HID Class Driver'а и HID Minidriver'ов. Для мыши это hidclass.sys и hidusb.sys соответственно. Они переводят USB-specific IRP в IRP понятные старому стеку и кидают их туда. Драйвер, описанный в моей статье, теоретически мог бы работать, если бы 1. был PnP и 2. его можно было бы воткнуть между mouclass.sys и i8042prt.sys, т.к. в статье он Upper-level и садится над mouclass, а HID Class Driver и HID Minidriver драйверы шлют IRP именно в mouclass, т.е. все кто сверху их не увидят.

    Практически я этого не делал, но начал бы с простого. В DDK\src\input\moufiltr есть готовый пример драйвера мыши, который использует специальный интерфейс драйвера i8042prt. Его надо тупо скомпилить, установить и посмотреть идут ли через него IRP от USB мыши.

    Ссылки по теме:
    http://msdn2.microsoft.com/en-us/library/ms790189.aspx
    http://msdn2.microsoft.com/en-us/library/ms790182.aspx
    http://msdn2.microsoft.com/en-us/library/ms790187.aspx
     
  5. Four-F

    Four-F New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2002
    Сообщения:
    1.237
    Возмжно что и upper-level class filter покатит. Всё зависит от того, как hid драйверы к мышиному стеку подключаются. Возьму любой фильтр (например, DDK\src\general\toaster\filter), убери всю специфику, так чтоб он просто редиректил IRP и поставь его как upper-level class и посмотри.