pgstein104 Posted September 3, 2010 Report Share Posted September 3, 2010 HI, I am currently updating a real-time application from LabVIEW 8.5 to 2009. In LabVIEW 8.5, I would reboot the controller, delete the exe, ftp the new exe, and then programaticaly start it using vi server. The problem I am running into is the following error: LabVIEW Real-Time: VIs built into executables cannot be accessed through VI Server calls. Use Source Distributions to dynamically call VIs on Real-Time targets."Apparently, you can no longer call a VI from an executable using VI Server in LabVIEW 2009. Using a source distribution is not an option, it must be an exe. Does anyone know a good way I can get around this? Does anyone know how to do one of the following: 1) Stop an exe running on the real-time programmatically. (This way I could delete it, place my new one on the real-time, reboot, and then have it boot on startup) 2) Start an exe on the real-time programmatically (not using VI-Server). (Reboot to kill the exe, delete it, place the new one on the real-time,start it programmatically) 3) Any other ideas on how ot deploy and run my exe. NOTE: Per project requirements, I must deploy a new executable at the start of my program. Any suggestions would be great. Thanks, Paul Quote Link to comment
Mellroth Posted September 3, 2010 Report Share Posted September 3, 2010 ... Does anyone know how to do one of the following: 1) Stop an exe running on the real-time programmatically. (This way I could delete it, place my new one on the real-time, reboot, and then have it boot on startup) 2) Start an exe on the real-time programmatically (not using VI-Server). (Reboot to kill the exe, delete it, place the new one on the real-time,start it programmatically) 3) Any other ideas on how ot deploy and run my exe. NOTE: Per project requirements, I must deploy a new executable at the start of my program... The quickest way (AFAIK) to deploy a RT applikation (with just one reboot), is to 1. upload the new rtexe, including dependencies, to the real time target into a new folder (perhaps with the version in the name) 2. download the ni-rt.ini file from the RT target to the local disk 3. Change the RTApp.StartupApplication path to point at your newly uploaded rtexe 4. upload the edited ini-file to the RT target 5. reboot 6. new rtexe should start running I also believe that it is possible to use private VI-server methods to edit the ini file directly on the RT target (if remote access is enabled) but I cannot check at the moment. Doing so would replace steps 2 to 4 above. /J 1 Quote Link to comment
pgstein104 Posted September 8, 2010 Author Report Share Posted September 8, 2010 Thanks for the input. What I am planning on doing is what you suggested, but I was going to upload the new executable to a folder based on the time/date. You don't happen to have a VI that will create a directory? I know the FTP command is MKD and I can write it myself, but if it is already done there is no point in re-inventing the wheel. Thanks, Paul Quote Link to comment
Mellroth Posted September 9, 2010 Report Share Posted September 9, 2010 Thanks for the input. What I am planning on doing is what you suggested, but I was going to upload the new executable to a folder based on the time/date. You don't happen to have a VI that will create a directory? I know the FTP command is MKD and I can write it myself, but if it is already done there is no point in re-inventing the wheel. Thanks, Paul I'll see what I can find. /J Quote Link to comment
pgstein104 Posted September 10, 2010 Author Report Share Posted September 10, 2010 I'll see what I can find. /J I just ended up writing my own. Thanks again for your help. Paul Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.