LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

managing application updates

Solved!
Go to solution

I have written an application that will be distributed to an unknown number of people throughout my company. I was wondering if any of you had experience or suggestions on how to push out application updates if needed.  Hopefully none will be, but...  

 

There were two options I was considering:

 

1) A "Launcher" application that checks a file for the most recent version and will do updates (basically what you see in most applications)

2) Keep only one executable on a shared network area and building an installer that will dump the runtime + a shortcut to the already built application.

 

Any thoughts / suggestions?

0 Kudos
Message 1 of 8
(2,656 Views)

#1 is much more friendly to the users, and to the person who will update the application.

 

In #2, you'd probably have to make sure everyone had gotten out of the application before you could update it with a new copy of an .exe.  With #1, the people generally won't be using the .exe on the server and thus won't have it locked.  You'd be able to replace the file as needed.  They would get the new update the next time they restarted the application on their PC.

0 Kudos
Message 2 of 8
(2,651 Views)

But... #2 is much easier for me 😛

 

I hadn't thought about trying to change the .exe while people had the application loaded though. That could cause more problems than it would be worth.  Any examples of launcher / updater that you know of? 

0 Kudos
Message 3 of 8
(2,646 Views)

Never used it but Deploy has some kind of automatic update API.

 

https://wirebirdlabs.com/deploy/#features

0 Kudos
Message 4 of 8
(2,641 Views)

http://sine.ni.com/nips/cds/view/p/lang/en/nid/211813

 

There is an addon for that


"Should be" isn't "Is" -Jay
0 Kudos
Message 5 of 8
(2,640 Views)

Ahh.  Too bad it is third party - I don't have access to that. I may end up having to just write my own simple version.

0 Kudos
Message 6 of 8
(2,621 Views)
Solution
Accepted by topic author BowenM

@BowenM wrote:

But... #2 is much easier for me 😛

 

I hadn't thought about trying to change the .exe while people had the application loaded though. That could cause more problems than it would be worth.  Any examples of launcher / updater that you know of? 



Nothing in LabVIEW.  But we have a homebuilt application that uses VB that does that.

 

The first program is the one that gets installed on each person's PC along with any needed run-time support files.  It loads a splash screen then checks to see if the version of the actual program's .exe on the person's PC is older than the one on the server.  If it is (or is missing), then it copies the .exe over.  If they are the same, it does nothing.  Then it launches the actual program .exe from the local PC and ends itself.  There might also be a special check to make sure it has access to the network server.  You'll need to make a policy decision as to what to do if it can't get to the server to do the file check.  Do you want to prevent the user from running the program, or will you allow them to run the copy on their PC even though there is a chance it might be out of date?

Message 7 of 8
(2,620 Views)

@RavensFan wrote:
The first program is the one that gets installed on each person's PC along with any needed run-time support files.  It loads a splash screen then checks to see if the version of the actual program's .exe on the person's PC is older than the one on the server.  If it is (or is missing), then it copies the .exe over.  If they are the same, it does nothing.  Then it launches the actual program .exe from the local PC and ends itself.  There might also be a special check to make sure it has access to the network server.  You'll need to make a policy decision as to what to do if it can't get to the server to do the file check.  Do you want to prevent the user from running the program, or will you allow them to run the copy on their PC even though there is a chance it might be out of date?

I really like that solution. It will allow for automatic updates as well as letting people know what software and tools are available. I could also add a "feedback" button for simple bug reports and new feature requests.  Thank you.

0 Kudos
Message 8 of 8
(2,602 Views)