Форум: "Система";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Вниз

Перехват обращения к LPT! 


Trot   (2001-10-12 06:47) [0]

Магистры поможите!!
Короче есть досовская прога которая печатает на принтер некие данные как их можно было бы перехватить и записать в файл заранее благодарен за любую информацию!!



Vitaly   (2001-10-12 14:47) [1]

Если есть сеть, то:
1 комп. Устанавливаешь любой матричный принтер с выводом в файл
2 комп. Назначаешь lpt на этот принтер (где DOS программа).



Trot   (2001-10-15 02:48) [2]

Нет ты не понял вопроса, просто надо чтоб данные обробатывала наша прога.



Ocean   (2001-10-24 07:02) [3]

Можно перехватить прерывание принтера, hex 17. Лично мне с прерываниями веселее работать на С.



Digitman   (2001-10-24 10:56) [4]

>Ocean
И как, позволь уж полюбопытствовать, ты "весело перехватываешь прерывания" в Win32 на PL3 ? Пусть даже и на С ?



Ocean   (2001-10-24 11:36) [5]

Кто говорит про Win32?

Примерно так:

int PrnIntr = 0x17;
void far interrupt (*OldVect)() = getvect(PrnIntr);
setvect(PrnIntr,NewVect);

Это работает в 98-м... конечно же, для перехвата печати чужой 16-битной программки.



Digitman   (2001-10-24 11:54) [6]

>Ocean
Кто говорит про Win32 ? Автор ! Читай топик:
"Перехват обращения к LPT! [D5, Win95/98]"

На кой ему нужны твои "16-битные программки", если D5 производит приложения ТОЛЬКО под Win32 ?




Anatoly Podgoretsky   (2001-10-24 14:01) [7]

Ocean © (24.10.01 11:36)

Хм адресные пространства твоей и чужих программ изолированы



Ketmar   (2001-10-24 23:33) [8]

а почитать вопрос? ДОСОВСКАЯ ПРОГА! вот и работать надо с ней в дос-сесии. если она общается с принтером не напрямую, а через int17, то перехват - вполне реальная вещь. и маздайка тут совсем не при чем...

Satanas Nobiscum!



Anatoly Podgoretsky   (2001-10-25 12:03) [9]

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



Digitman   (2001-10-25 12:22) [10]

>Ketmar
"Досовская прога" может вообще не использовать Int17h, а работать с портом напрямую. будучи же запущенная не в родной среде, а в VM86mode, любые ее "потуги" по непосред.доступу к порту будут вызывать апп.прерывания по нарушению защиты с немедленным переходом на обработку в контексте соотв.шлюза с уровнем превелегий PL0. Твои действия ?




Форум: "Система";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.04;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.073 c
7-9005            AlikRyazan            2001-10-25 18:12  2002.02.04  
Модем


1-8886            Dmitriy_R             2002-01-15 13:51  2002.02.04  
Генерация случайного числа в диапазоне 30......90


4-9027            Oxy2                  2001-12-07 20:33  2002.02.04  
Все о CheckBox е


1-8838            Чел                   2002-01-19 00:53  2002.02.04  
Инсталятор как у Office XP


7-9008            Vitaliy Jungle        2001-10-13 05:42  2002.02.04  
Гребаный MSDOS