Вниз
Скачать: CL | DM;

Работа с портом ВВ в NT   Найти похожие ветки 

 
Alexsandr ©   (2002-05-21 18:41) [0]

Граждане, подскажите каким образом в NT можно работать с портами ввода/вывода.
Александр


 
CapFunny   (2002-05-21 19:16) [1]

Добрый день.
Мне в свое время пришлось сталкиваться с подобной проблемой, так что приготовьтесь записывать :)
Введение.
Дело в том, что NT запрещает прямое обращение к портам любых устройств. На этом, собственно и основывается ее надежность и устойчивость. Обращение к портам устройства возможно лишь с помощью зарегистрированного в системе драйвера этого устройства, причем надо сразу оговорится, что такая среда разработки, как DELPHI не поддерживает возможность разработки драйверов. Соответственно программа на DELPHI должна использовать драйвер, написаный в другой среде, имеющей свой DDK.
Теперь ответ на Ваш вопрос.
Для обращения к любому порту (теоритически) любого устройства нужно использовать драйвер, реализующий просто сами по себе обращения, побобные ассемблерным IN и OUT. Существует большое количество компонентов для дельфи, которые реализуют эту возможность. Работают они примерно одинаково: сначало регистрируют в системе поставляемый с ними драйвер, потом пользуются экспортированными из него функциями. Я в свое время использовал замечательный компонент SmallPort ( http://www.torry.net/portaccess.htm), написаный Александром Вейтзманом. Если нет желания использовать компонент целиком, можно просто пользоваться поставляемым с ним драйвером, предварительно зарегистрировав его в системе. Узнать, как это делается можно, посмотрев код компонента.
Вот собственно и все, удачи.


 
слон   (2002-05-23 05:13) [2]

то же самое ZlPortIO и твоя прога будет работать по NT и 9x
без проблем!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.007 c
14-13812
conr
2002-07-11 15:02
2002.08.05
Проблемы с dsgnintf.dcu


3-13528
Cubus
2002-07-15 10:13
2002.08.05
mdb 2 db


3-13550
studentik
2002-07-09 20:18
2002.08.05
Как перенести прогу, работающую с БД InterBase на


3-13575
AlexGreG
2002-07-12 12:04
2002.08.05
... Стоп ревреш ...


14-13775
[NIKEL]
2002-07-08 18:34
2002.08.05
А где, собственно, IronHawk ? :)))




   Наверх