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

Вниз

COM-порт   Найти похожие ветки 

 
Федор   (2004-11-09 21:19) [0]

Настраиваю порт:

 hCom := CreateFile("COM2",
   GENERIC_READ OR GENERIC_WRITE,
   0,    // comm devices must be opened w/exclusive-access
   nil, // no security attrs
   OPEN_EXISTING, // comm devices must use OPEN_EXISTING
   0,   // not overlapped I/O
   0    // hTemplate must be NULL for comm devices
   );
 if hCom = INVALID_HANDLE_VALUE then
   raise Exception.Create("COM2 íå ïîäêëþ÷àåòñÿ.");

 GetCommState(hCom, DCB);

 DCB.BaudRate := 9600;
 DCB.ByteSize := 8;
//  DCB.Parity := EVENPARITY;
 DCB.Parity := NOPARITY;
 DCB.StopBits := ONESTOPBIT;
 SetCommState(hCom, DCB);

 Timeouts.ReadIntervalTimeout := 50;
 Timeouts.ReadTotalTimeoutMultiplier := 1;
 Timeouts.ReadTotalTimeoutConstant := 5000;
 Timeouts.WriteTotalTimeoutMultiplier := 0;
 Timeouts.WriteTotalTimeoutConstant := 0;
 SetCommTimeouts(hCom, Timeouts);


Потом пишу:

Res := WriteFile(hCom, s, Length(s) + 1, Written, nil);

Дома все работает. А на работе - нет, а там-то как раз и нужно. hCom определен, но получается Res = False и Written = 0.

Куда смотреть, господа?


 
jack128 ©   (2004-11-09 21:34) [1]

GetLastError/RaiseLastWin32Error что говорит??


 
Федор   (2004-11-09 21:36) [2]

Ну, GetLastError говорит: 36 (или 39? - на работе дело было). И что с ним дальше делать?


 
Федор   (2004-11-09 21:39) [3]

>jack128

За RaiseLastWin32Error спасибо. Завтра посмотрю.


 
jack128 ©   (2004-11-10 01:28) [4]

Федор   (09.11.04 21:39) [3]

Названия всех констант, которые возвращает GetLastError начинаются в прифекса ERROR_ .

В Windows.pas эти константы описаны в порядке возрастания их значений - поэтому узнать эти названия не так уж и сложно. А по названию и представить, что за ошибка произошла можно..



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

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

Наверх




Память: 0.47 MB
Время: 0.044 c
1-1103043697
Sam Stone
2004-12-14 20:01
2004.12.26
Объект в объекте


14-1102084056
IgorMarx
2004-12-03 17:27
2004.12.26
Очередной орех, не иначе :)


6-1097594243
PiOnEr
2004-10-12 19:17
2004.12.26
Mozilla & Delphi


1-1102945000
ruslanyd
2004-12-13 16:36
2004.12.26
Форма как фрейм


1-1102739411
Eugeni
2004-12-11 07:30
2004.12.26
TListBox