Looking at the explanation of the Disk Full message I feel there are two differences in my case:
a) I get the error when I open the port, not writing to it. But I can see how the error Disk Full could account for many different types of serial port errors, but more importantly,
b) Why does it work when running in the IDE? Seems like I would get the same error message. Maybe the IDE handles the error differently? When in the IDE the port does open and I can use it (receive data on the com port). But outside of the IDE I get the error and the port does not open.
Craig