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

Вниз

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

 
sden   (2003-12-06 15:46) [0]

Ovl: OVERLAPPED;

hCOM:=CreateFile(pchar(cmbPort.Text),GENERIC_READ or GENERIC_WRITE,0,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL or FILE_FLAG_OVERLAPPED,0);

Ovl.hEvent:=CreateEvent(nil,false,false,nil);

BytesToRead:=255;

ReadFile(hCOM,RxBuf,BytesToRead,BytesRead,@ovl);

При чтении с OVERLAPPED переменная BytesRead остается равной 0, даже когда данные приходят.

Если убираю OVERLAPPED - в BytesRead записывается действительное значение.

Из-за чего такое может быть?

Заранее благодарен.


 
Бином Ньютоныч   (2003-12-06 18:42) [1]

Как ты думаешь, зачем тут нужен Event, а? похоже, вообще никакого понятия об асинхронных операциях. Иди читай MSDN или еще что-нибудь, пока кто-нибудь еще дальше не послал


 
sden   (2003-12-06 19:35) [2]

я представил только фрагменты кода, так что не было необходимости высказывать такое неуважение. а ответ я так и не получил.


 
Anatoly Podgoretsky ©   (2003-12-06 19:41) [3]

Ты убрал главные куски кода, оставил не значительные.


 
Бином Ньютоныч   (2003-12-06 20:09) [4]

>sden (06.12.03 19:35) [2]
>а ответ я так и не получил.
Хорошо, вот ответ: BytesRead = 0 - вполне нормальная ситуация в данном случае


 
sden   (2003-12-06 23:28) [5]

в курсе.
сам справился.
GetOverlappedResult - вот ответ.
все красиво работает!
спасибо за помощь...


 
Polevi ©   (2003-12-08 09:21) [6]

у меня подозрение что 4 параметр труе...



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
6-80073
BlackSun
2003-12-17 13:20
2004.02.25
Indy и TIdIOHandlerSocket


14-80281
Jolik
2004-02-03 18:11
2004.02.25
В Дельфи 5 появилась такая бага ...


1-79725
Awod
2004-02-12 11:59
2004.02.25
Плывушие шрифты


4-80346
BKGG
2003-12-17 20:06
2004.02.25
Как с помощю API создать обработчик нажатия Button-а.


6-80058
Bless
2003-12-18 17:30
2004.02.25
Ассинхронные прием/передача данных в консольном приложении