Serial Port Not Closing Properly

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • !NoItAll
    Contributor
    • May 2006
    • 297

    Serial Port Not Closing Properly

    I am having an issue with closing a serial port in VB.NET. Here is how I close the port:

    Code:
    If spPort.IsOpen = True Then
       spPort.DiscardInBuffer()
       spPort.DtrEnable = False
       spPort.RtsEnable = False
       spPort.Close()
    End If
    spPort.Dispose()
    The problem is that another application (I will call it Application X) we use after my program has fully exited still can not get the com port. I think the problem is with Application X not properly (or fully) initializing the com port - however when Hyperterminal is finished with the port Application X works fine. Hyperterminal also has no problem with the com port after my application - it's only Application X that appears to have a problem with the com port after my VB.NET application has been using it (and closes it as per the above code).
    Here's how Application X open the serial Port:
    Code:
    m_serialPort = CreateFile( portStr.c_str(), GENERIC_READ, 0, 0, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0);
    That code is handled by another division in the company so I have no control over it...
    Also - it is already deployed (1000+ installations). ..
    Thanks to anyone who can help.

    Is there something I am not doing (or could do) to leave the com port in the same state Hyperterminal does?
Working...