Показать сообщение отдельно
  #5  
Старый 05.03.2012, 00:20
Аватар для cotseec
cotseec cotseec вне форума
Активный
 
Регистрация: 16.07.2008
Сообщения: 353
Версия Delphi: D7,TDE06,RAD09
Репутация: 1443
По умолчанию

Цитата:
Сообщение от zoox
Код:
hLpt := CreateFile('LPT1', GENERIC_READ or GENERIC_WRITE, 0, nil,
        OPEN_EXISTING, 0, 0);
hLpt-хэндл (системный ID) LPT порта, CreateFile открывает порт с установленными параметрами (здесь открываем для записи и для чтения, уже существующий (а как иначе))) с текущими привилегиями и дескриптором защиты) подробнее тут или тут
Цитата:
Сообщение от zoox
Код:
DeviceIoControl(hLpt, IOCTL_PAR_SET_WRITE_ADDRESS, @Address, 1, nil, 0, ret, nil);
настраиваем LPT порт (через драйвер порта) подробнее тут или тут

Цитата:
Сообщение от zoox
Код:
// Запись
writefile(hlpt, [$55], 1, ret, nil);
записываем в ранее открытый порт ОДИН байт со значением 0х55
Цитата:
Сообщение от zoox
Код:
// Чтение по адресу
ReadFile(hLPT, Data2, 1, ret, nil);
Panel1.Caption := inttostr(data2);
читаем из ранее открытого порта ОДИН байт и выводим его занчение
Цитата:
Сообщение от zoox
Код:
CloseHandle(hLpt);
закрываем порт и освобождаем занятый хэндл

фактически адрес порта это и есть его хэндл, по другому как-то понять
Цитата:
Обьясните для чайника где адрес порта?
мой мозг отказывается

как-то так
Ответить с цитированием