Форум: "Система";
Текущий архив: 2004.02.25;
Скачать: [xml.tar.bz2];
ВнизПроблема с 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.029 c