I do not get that problem on my setup, because I am running LabVIEW RT 7.0. Here was the original bug report from 6.1: If I try to write to a shut-down server from LV, an error 63 is returned. The same action from LV RT results in error 64.
So, that is why you are getting a different error message. Perhaps something else was corrected between LV 6.1 and 7.0 that allows my RT VI to run for several minutes and still reconnect to the datasocket server afterwards. I won't be much help finding a workaround because I'm not running 6.1--but here are a few suggestions:
1. Try just checking for the 64 and not the 63 error on the RT VI... I'm not sure if this will make a difference or not.
2. Try using a Datasocket Write instea
d of a Datasocket Read to check if the connection has been re-established.
3. Use a more complicated mechanism of communication such as TCP/IP or UDP. It seems that it may be better suited to your application--but will require more programming.
4. Perhaps some kind of signal to the RT Box that datasocket communication is active, and to start publishing data to the datasocket server. The signal line could be a TCP/IP message, a physical wire, could be a lot of different things.
5. There's always the 7.0 upgrade...
If the datasocket plan just won't work the way you want it to, you are probably best off using TCP/IP, because it allows for more flexibility. There are plenty of examples shipping w/ LabVIEW indicating how TCP/IP is setup.
Good luck!
Darin Gillis
NI - Chief Product Owner - VeriStand