On Wed, 05 Dec 2001 12:27:32 +0000, "T REX" <the1trex@hotmail.com> wrote: >Hmm well it is a posibilty, the weird thing here is that the Thinkboxx >does not use hardware flow controll, this i know since the serial cabel >suplied only has three pins where two are data and one is ground. >I think that the lacking support may be conusing the error, but why does it >work under windows when hardware flow controll is not available. >The program must be relaying on software flow controll, >does windows use software flow controll that emulates DTS/DTR signals. > >The fact that it is the lacking 1024 bytes that couses the problem strongly >supports the teory that the problem resides in the serial communication. >Maybe that when the thinkboxx sends an request, this request for some reason >does not rach the comm port or that the answer dont, maybe i hawe a wronlgly >configured flow controll. > >On windows the program does not hang ewen when nothing is connected to the >comm port so it cant be getting the 1024 bytes there either but it dosnt >hang, It could be that Windows just times out. Could you try to apply to dlls/kernel/comm.c the following patch : --- comm.c.orig Fri Nov 30 18:46:43 2001 +++ comm.c Wed Dec 5 14:34:30 2001 @@ -1392,6 +1392,13 @@ return FALSE; } + TRACE("timeouts=%ld %ld %ld %ld %ld\n", + lptimeouts->ReadIntervalTimeout, + lptimeouts->ReadTotalTimeoutMultiplier, + lptimeouts->ReadTotalTimeoutConstant, + lptimeouts->WriteTotalTimeoutMultiplier, + lptimeouts->WriteTotalTimeoutConstant); + SERVER_START_REQ( set_serial_info ) { req->handle = hComm; and post the part of the trace with SetCommTimeouts, this would show what are the values passed to this Api. Gerard