Hello all,
I've found the reason of the problem I mentioned a
couple of weeks before. The problem was I hadn't reveived 1-byte messages sent
through the serial port to a Window application running under Wine.
This byte actually came through to my program, but
ReadFile reported in this case an error, that I didn't expected, because it
hadn't been in fact there.
I analyzed only two type of errors:
ERROR_IO_PENDING and ERROR_IO_INCOMPLETE. By all other errors the input was just
ignored.
Now in case when only one byte had
been received ReadFile returned with the error 87 (ERROR_INVALID_PARAMETER
or something like that, I haven't the symbolic handy now), although all
parameters were actually OK.
And the received byte had been read with the
correct length of received message (1 in this case), so it could be used for as
a 'normal' input.
I made a change just to ignore this error and now
everything works fine.
Is it a bug in Wine or something else?
Vlad Britt
|