2009-07-06 7 views
1

Мне нужно перехватить выходной трафик LPT. После нескольких часов исследований я понял, что единственный способ сделать это - написать драйвер режима ядра, точнее «драйвер фильтра» ...?Sniffing LPT Traffic

Я загрузил WDK, но терминология и огромное количество типов драйверов немного подавляющее.

Я в основном пытаюсь понять, что вид драйвера Я должен писать; моя целевая среда - Windows XP SP2 и 3 только.

Некоторая справочная информация, если это имеет значение: у меня есть куча устаревших приложений DOS, которые печатаются на LPT1. Я хотел бы иметь возможность захватить этот вывод и перенаправить эти данные (после вызовов GDI) на современный USB (сетевой) принтер. К счастью, последняя часть проблемы проста.

Я надеюсь, что кто-то может указать мне в правильном направлении. ТИА.

ответ

1

У меня есть ощущение, что вы можете использовать Detours для обнюхивания и регистрации трафика. У меня был друг, когда-то делали некоторые очень смелые вещи, перемещая вещи из COM-порта в другое место, используя его.

Я не знаю точно, но это может быть проще, чем писать драйвер с нуля.

+0

Спасибо за ваш ответ. Я думаю, что обход CreateFile/WriteFile и друзей будет работать, но у меня такое ощущение, что это не сработает для 16-битного приложения. – 2009-07-06 21:01:12

1

Ребята из sysinternals.com записали приложение под названием Portmon, которое позволит вам увидеть, что происходит с последовательными и параллельными портами.

Это несколько лет (последнее обновление 11/2006), но оно должно позволить вам регистрировать то, что вам нужно, по крайней мере, для проведения некоторых исследований.

Если приложения основаны только на DOS, вы должны иметь возможность записывать программу TSR, которая загружается перед другой программой и перехватывает вызов прерывания печати, и перенаправляет ее туда, где вы хотите.

Вы, возможно, придется освежить свои 386 ассемблер :)

0

вам нужно сделать больше, чем захват и пересылать данные принтера делать? Если это все, что вам нужно сделать, то Printfil должен выполнить эту работу за вас. Вы найдете здесь: http://www.printfil.com/english.htm

 Смежные вопросы

  • Нет связанных вопросов^_^