лучший инструмент для обратного проектирования драйвера тачпада WinXP PS/2?

StackOverflow https://stackoverflow.com/questions/51011

Вопрос

У меня есть тачпад PS/2, для которого я хотел бы написать драйвер (я всего лишь веб-разработчик, так что это для меня незнакомая территория).Тачпад поставляется с драйвером Windows XP, который, по-видимому, отправляет сообщения для включения/отключения касания по щелчку.Я пытаюсь выяснить, какое сообщение он отправляет, но не знаю, с чего начать.Будет ли работать такое программное обеспечение, как «Syser Debugger»?Я хочу перехватывать исходящие сообщения, отправляемые на шину PS/2.

Это было полезно?

Решение

IDA Pro бесполезен для вас, если вы хотите узнать, какие «сообщения» отправляются.Вы должны понимать, что для большинства веб-разработчиков это очень большой шаг вперед, но вы это уже знали?

Я бы начал с решения, действительно ли вам нужно работать на уровне драйвера, зачастую это уровень ядра.Уровень пользовательского режима может быть тем местом, где вы хотите посмотреть в первую очередь.Используйте такой инструмент, как WinSpy или другой инструмент отладки Windows, чтобы узнать, что Сообщения передаются вашим программным драйвером и апплетом настройки мыши на панели управления.Вы можете использовать функцию Windows API под названием Отправить сообщение() для отправки сообщений в приложение из пользовательского режима.

Вашей первой остановкой при разработке драйвера устройства должно стать Документация Windows DDK и ОСР Онлайн.

Другие советы

Я предлагаю прочитать характеристики сенсорной панели Synaptics (большинство тачпадов, установленных на ноутбуках, являются Synaptics), доступные здесь. http://www.synaptics.com/decaf/utilities/ACF126.pdfЯ думаю, на странице 18 вы найдете ту функцию, которую ищете.По крайней мере, вы будете знать, чего ожидать.

Так что, скорее всего, драйвер тачпада «конвертирует» команду, поступающую из пользовательского режима, в эту команду PS/2.

Я не знаю особенностей драйвера PS/2 тачпада, но вижу два основных способа взаимодействия панели пользовательского режима с драйвером:- Обновите некоторый ключ в реестре (это на самом деле очень распространено) - драйвер предоставляет альтернативный «канал», который открывает приложение пользовательского режима и записывает конкретные команды

Возможно, вы захотите попробовать использовать монитор процессов из sysinternals для регистрации активности реестра при настройке/сбросе этой функции.Что касается варианта 2, вы можете попробовать трекер IRP от OSR и посмотреть, есть ли какая-либо конкретная связь между панелью и драйвером (в виде IRP, идущих туда и обратно).В этом случае требуются знания программирования ядра.Отладчик ядра Windows также может быть полезен, чтобы проверить, есть ли у драйвера PS/2 какой-либо альтернативный канал.

Посмотри на ИДА Про - Интерактивный дизассемблер.Это потрясающий дизассемблер.

Если вы хотите отлаживать, а не просто реконструировать, попробуйте PEBrowse Professional Interactive из SmidgeonSoft

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top