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

Вниз

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

 
Alexxov ©   (2002-10-25 13:41) [0]

Привет!
Пытаюсь работать с LPT портом через API. Не получается. Ошибки описаны ниже в тексте исходника. Что я делаю не так? Причем для COM портов этот исходник прокатывает на ура.
PS: на LPT будет не принтер.

Port: THandle;
CommProp: TCommProp;
CommConfig: TCommConfig;
TimeOuts: TCommTimeouts;

Port := CreateFile (
PChar("LPT1"), GENERIC_WRITE, 0, nil, OPEN_EXISTING, 0, 0);
TimeOuts.WriteTotalTimeoutMultiplier := 1000;
TimeOuts.WriteTotalTimeoutConstant := 1;
SetCommTimeouts (Port, TimeOuts);
// тут все ок, порт открывается, тайм-ауты устанавливаются

i := sizeof(CommConfig);
GetCommConfig (Port, CommConfig, i);
// возвращает TRUE, но размер полученной структуры
// CommConfig.dwSize=0
// и поля структуры тоже нулевые

GetCommProperties (Port, CommProp);
// возвращает TRUE, но размер полученной структуры
// CommProp.wPacketLength=0
// и поля структуры тоже нулевые

WriteFile (Port, Buffer, 2, NByte, nil);
// тут программа повисает до окончания тайм-аута,
// при возврате количество выданных байт Nbyte=0

CloseHandle (Port);
// тут все ок


 
Александр Спелицин ©   (2002-10-25 14:49) [1]

GetCommProperties, GetCommConfig, SetCommTimeouts предназначены для работы с последовательными портами. Про паралельные порты в документации ничего не сказано.



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

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

Наверх




Память: 0.46 MB
Время: 0.025 c
1-99081
Calm
2002-12-17 16:25
2002.12.30
Возможно ли программное создание pdf-файлов?


3-98952
gunner
2002-12-06 11:24
2002.12.30
Проблема вызова функции из сервиса соединения с БД из DLL


4-99406
Vasily Terekhov
2002-11-14 12:21
2002.12.30
Перехват открытия и закрытия приложения....


1-99104
PONTIY
2002-12-20 07:17
2002.12.30
Как в форму добавить в качестве поля незарегистрированный класс?


1-99145
kalishenko stas
2002-12-18 13:59
2002.12.30
И снова Word