Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.14;
Скачать: CL | DM;

Вниз

Проблема   Найти похожие ветки 

 
sofs ©   (2005-05-28 09:56) [0]

Тут начал работать с портами.ВВожу вот такой код:(Д7)
function InPort(PortAddr:word): byte;
{$IFDEF WIN32}
assembler; stdcall;
asm
 mov dx,PortAddr
 in al,dx
end;
{$ELSE}
begin
 Result := Port[PortAddr];
end;
{$ENDIF}

При исполнении ошибка "privileget instruction" возникает в строке in al,dx.Можно ли это обойти?
если есть какие-то другие способы работы с портами-подскажите плиз где можно найти инфу о сабже.
p.s.Этот код был рекомендован для работы с портами вводы\вывода для режима win32,но на моём компе с WinXp выдаётся вышеуказанная ошибка.
p.p.s.В той же статье сказано:В Delphi 1 записывать и считывать из портов можно через глобальный массив "ports". Однако данная возможность отсутствует в "32-битном" Delphi.Если как-то можно работать с массивом ports в D7,то как или опять-же где можно найти инфу по этому вопросу.


 
isasa ©   (2005-05-28 10:24) [1]

В OS NT4 и выше "простым" программам работа с железом напрямую запрещена.
Попробуй прорваться через API функцию

cHandle := CreateFile(PortName,
              GENERIC_READ+GENERIC_WRITE,
              FILE_SHARE_READ+FILE_SHARE_WRITE,
              nil,
              OPEN_EXISTING,
              FILE_ATTRIBUTE_NORMAL+FILE_FLAG_OVERLAPPED,
              0);

где, PortName:="COM1"; //"COM2"...

В делф. есть хелп на нее.



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

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

Наверх




Память: 0.47 MB
Время: 0.03 c
14-1117056082
Fredy314
2005-05-26 01:21
2005.06.14
Типа пришёл я хвалится(а). И Очень мне хочется поздравлений


9-1110792899
GLSceneFan
2005-03-14 12:34
2005.06.14
Важное объявление


1-1117537124
Karlson
2005-05-31 14:58
2005.06.14
При добавлении текста в Memo он [текст] переносится по строкам


1-1117108498
Borik
2005-05-26 15:54
2005.06.14
Как программно скопировать из Ворд в Делфи


1-1117434043
Lenochka
2005-05-30 10:20
2005.06.14
Как удалить форму?