Win2000/XP SP2 Breaks Serial Writes. How to fix. RRS feed

  • Question

  • I have an application that uses the stream io apis ( createfile(), readfile(), writefile(), etc. ) to transmit and receive serial data.  My design involves a thread for receiving data on one port, and another thread for writing on another port.

    The app worked for the longest time on any machine until the service packs were installed.  We believe that this is related to the usb virtual comm ports.

    As soon as the service packs were installed, when attempting to write out on one port while data is coming in on the other, the WriteFile() call locks up.  Even setting a timeout doesn't force the call to return.

    Is it possible to nail down the culprit without having to dive into the DDK?  One of my plans of attack was to build and install the serial driver that is included in the DDK by my app.  My hope was that the app would call into the serial driver via. the stream io apis, and that there would not be any more driver layers slipped in between my app and the newly built serial driver.

    Do you think a symbol build would do the trick?  I just don't know where - at this point - the WriteFile is locking up.  Its definitely somewhere in the OS, but I just don't know where and how to go about isolating it.

    Any help is welcome.

    Thanks so much in advance.

    Friday, September 1, 2006 4:20 PM