Форум: "Система";
Текущий архив: 2004.04.18;
Скачать: [xml.tar.bz2];
ВнизКак работать с LPT под любой WIN? Найти похожие ветки
← →
-=DeMoH=- © (2004-02-07 16:29) [0]Подскажите, как можно организовать работу с LPT портом для управления чего-либо так, чтобы программа работала и под WIN-9X, и под WIN-2000/XP?
← →
-=DeMoH=- © (2004-02-08 18:18) [1]Ну неужеди никто не знает, чем можно заменить скажем
asm { mov dx, 379h;
mov ax, 10001000b;
out dx, ax };
для того, чтобы программа работала не только под Windows-98, но и под Windows-2000 и ей подобным?
← →
N169 (2004-02-08 21:43) [2]Способ 1 ("Правильный"):
Для систем старше Windows 98 и всех NT-based можно написать legacy-драйвер, который будет делать обращение к порту через вызов соотв. ф-и hal.dll (WRITE_PORT_UCHAR() или READ_PORT_UCHAR()). Приложение, чтобы обратиться к порту, должна будет вызывать этот драйвер через ф-ю DeviceIoControl().
Для Windows 95/98 также сработает фрагмент типа того, что вы привели. Просто делайте проверку типа системы при старте.
Используйте этот путь для получения стабильного результата.
Способ 2 ("Неофициальный"):
Есть некий способ выполнить часть кода приложения в режиме ядра.
Способ основан на модификации LDT/GDT.
Поищите в сети архивчик callgate.zip и книгу
MATT PIETREK "Windows 95 System programming SECRETS".
Там есть вся необходимая информация.
Этот путь довольно скользкий, но я видел приложения, которые его используют. Например, софт к программатору PICPROG.
Способ 3 ("самый Дельфийский"):
Найдите и используйте (готовый) сторонний компонент для обращения к портам.
Поищите по названиям: WinIO, unio, directport, lptwdmio и прочая, прочая. Можете зайти на LPT port central:
http://www.lvr.com/parport.htm
Там много полезной информации по вашему вопросу.
Вот такие дела.
← →
Dmitriy_G © (2004-02-09 09:24) [3]N169, здорово написанно, Распечатаю и повешу на стену как руководство к действию ;)
Правильный способ позволяет, самому отвечать за свое произведение. А не ковырять в носу, и смотря в пол гундосить, что она якобы работало ;)
-=DeMoH=- Начинай с третьего способа, второй пропускай. Потом прыжок и ты на вершине. И ты профессионал ;)
А третий способ, он работает, но боязно как-то )))
← →
pavel_guzhanov © (2004-02-09 09:34) [4]я уже в этом форуме неоднократно советовал пользоваться WinIO. Работает подо всеми виндами, несложно в использовании. Мыль, пришлю библиотеку, и мой рабочий пример. Работает (проверено) под 98, 2000 и XP
← →
-=DeMoH=- © (2004-02-09 18:48) [5]Ну я согласен, только кидай мне пример на demoh@list.ru, а то мой основной адрес упал (со стола)...
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2004.04.18;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c