Alex,
There have always been, in my observation, differences between how a VI runs in the development environment and the deployment (runtime) environment.
You seem to be describing an issue that I have some recollection of as having happened to me. In my case, a multithreaded application didn't work right as a built executable, but did as a VI in the LabVIEW environment.
In my case, it was the fault of the programmer (not me, I swear it...I didn't have the skill at the time for multi-threaded applications.) I therefore suggest two possibilities. The first is that your application may need some rework on the multi-threading. There is an application note on NIs website having to do with Multi-threading. My second suggestion is that there is
some behavioral differences between development and runtime environments that may be affecting your program operation. It would probably be easier for you to test this theory. To do so, you will need to build your application as a "loader". If you go to the "Developer Zone" link above, you will find a link there to "Developer Insights." Go there, and then go to the "Software Corner" article. This article explains how to create a loader, and why. Its easy.
If this doesn't solve (or even if it does) your problem, contact NI support at ni.com/ask. They will be able to help you further with this issue.
-Michael Du'Lyea
Advanced Test Engineering
http://advancedtestengineering