Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

WinIO [D6, WinXP]


Vlad25 ©   (2004-03-04 17:46:00) 

Уважаемые Мастера! Кто знает, как программировать LPT порт посредством WinIO.dll под XP? Подкиньте пример, плиз!


pavel_guzhanov   (2004-03-10 16:04:00) [1]

в WinIO есть и исходники и готовые dll, vxd и sys. Исходники на
с++. dll, vxd и sys файлы клади в директорию к своей программе В исходниках есть заголовочный файл WinIO.h. Его надо конвертировать в WinIO.pas вручную или при помощи HeadConv (Правда его надо потом подредактировать вручную).
В WinIO есть и help по использованию. А в общем делай так:

Глобальная переменная
var idWinIO:Boolean;
При загрузке формы:
// Запуск  InitializeWinIo для инициализации библиотеки WinIo
idWinIO:=InitializeWinIo; //Делается один раз в начале программы
if not idWinIO then
  ShowMessage('Не установлен WinIO')
else
  SetPortVal($378, 3, 1); //"1" на D0 и D1 выход. или
//сделать SetPortVal($378,0,1) - нули на все ноги порта

далее в программе:
if idWinIO then
 begin
     SetPortVal($378, 2, 1); //"1" на D1 выход "0" на D0 выход
// или SetPortVal($378, 1, 1); //"0" на D1 выход "1" на D0 выход
     Sleep(2000);
     SetPortVal($378, 0, 1); //"0" на все  выходы
end;

И в конце программы:
if idWinIO then
begin
 SetPortVal($378, 0,1);// нули на все выходы
 ShutdownWinIo;//Выгрузка один раз в конце программы
end;
Второй параметр SetPortVal - это то, что пишется в порт, в двоичном виде.


Наверх

Титульная страница Поиск, карта сайта Написать письмо