Текущий архив: 2006.04.09;
Скачать: CL | DM;
ВнизКак обойти привелегированную инструкцию для записи в порт? Найти похожие ветки
← →
ms_odin (2006-03-27 11:29) [0]День добрый, Мастера!
Пытаюсь писать в порт RS-232 напрямую. Диапазон ввода-вывода посмотрел в диспетчере устройств, для моей сетевой он D800-D8FF.
записать байтик пытаюсь так:
var
port : WORD; // порт, куда пишем
val : BYTE; // что пишем
begin
port := 55297; // = D801;
val := 1;
asm
MOV DX, port // записать в DX номер порта
MOV AL, val // записать в AL нужный байтик
OUT DX, AL // записб в порт
end;
end;
При исполнении выполняется ошибка типа "Privileged instruction ...".
Наткнулся на мнение, что NT-системы прямого доступа к портам не дают.
Что можно сделать? D5, W2K+SP4
← →
Сергей М. © (2006-03-27 11:45) [1]А надо ли "напрямую" туда лезть ?
На то ведь WinAPI-функции существуют ..
← →
ms_odin@mail.ru (2006-03-27 11:55) [2]Хорошо, а как тогда осуществить передачу данных по Ethernet"у без использования протоколов верхнего уровня, TCP и IP? Ведь, насколько я понимаю, ВСЕ компоненты и функции API "наварачивают" на себя служебную информацию протоклов передачи данных различного уровня.
← →
ms_odin (2006-03-27 12:16) [3]Приношу извинения за ошибку в вопросе - я не через COM - порт записываю данные, а через сетевую карту.
← →
Anatoly Podgoretsky © (2006-03-27 12:24) [4]Доступ до аппаратных ресурсов делается в кольце защиты 0
← →
Сергей М. © (2006-03-27 12:33) [5]
> ВСЕ компоненты и функции API "наварачивают" на себя служебную
> информацию протоклов передачи данных различного уровня
см. все по теме RAW SOCKETS
Страницы: 1 вся ветка
Текущий архив: 2006.04.09;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.014 c