Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.05;
Скачать: 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 вся ветка

Текущий архив: 2002.08.05;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
1-13611
Aleksandr
2002-07-24 17:45
2002.08.05
Можно ли быстро два массива байт превратить в две строки?


1-13664
иван
2002-07-23 14:32
2002.08.05
Кодирование файла


1-13637
j_onion
2002-07-23 03:49
2002.08.05
указатель на запись


14-13778
Химик
2002-07-10 10:46
2002.08.05
Задачка на засыпку


14-13821
Brand
2002-07-09 23:28
2002.08.05
Build with runtime packages (Размер *.exe и *.dll)