foxjoker,
First I am not a seasoned Serial Port developer. In the modest experience I have in Win16 and Win32 serial port development there is no notion of 'reset'. So I still have no idea what has actually happend in technical terms.
First, are you sure the 'port' is not responding to your code or is the device connected to the port not responding? If so how?
If you are sure it is the port:
Have you tried ClearCommError(), ClearCommBreak(), Clearing and setting DTS and RTS, changing the baud rate, etc. ?
Also, think about the architecture. The port itself is a hardware component that probably is not the source of the problem. Next comes the system bios that connects the port to the system, this is not likely the problem either. Then comes the device driver which is software and could possibly be what is locking up. If any of those three tiers are causing the problem I would think a re-boot would be the only solution.
Next comes your code manipulating the Comm API. Then finally the device that is connected to the port, this would be the first thing I would look at.
Hope this helps
-pete