LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Installer not installing older versions

I have several versions of a utility built with Lab Windows CVI (NOT LabView) and I want to allow the users to install older versions when ever they want.

They can't!!!!!!!

I have older already release versions that I want users to install, when do I need to change to make an older version install over a newer version?????? Is it something in setup.ini?

 

This has become critical on one computer where the Add/Remove Programs no longer lists this utility. I cannot uninstall the newer version so that I can install the older version. Any ideas what to do about this?

I can't even install the same version, so I had to build a new version (I consider it a fake version, because it is only to uninstall the latest version). I installed this fake version, and I was then able to remove the "latest" version and install the older version.

 

So, I have 3 questions:

1)  How can I change my builds to allow any version to be installed on top of any other version?

2) How can I fix or uninstall a version that is not in the Add/Remove Programs?

3) How can I change the installer of already built and released version (some ini file or something) to allow it to install on newer versions?

0 Kudos
Message 1 of 4
(4,047 Views)

Hey Ken,

 

I'm curious as to what's happening that won't let your users use an older version of the program--do they see an error message of some kind? Generally, as long as the CVI Runtime Engine on the target machine is the same version or newer than the engine the executable was targeted for, it will work. Here's a KnowledgeBase about that: https://knowledge.ni.com/KnowledgeArticleDetails?id=kA0VU0000003I0P0AU&l=en-US

 

Starting in CVI 2012, you can force an executable to use a specific version of the Runtime Engine, and install multiple versions of the RTE on the same machine, as seen in this CVI help file: https://www.ni.com/docs/en-US/bundle/labwindows-cvi/page/cvi/usermanual/sidebysideoverview.htm

 

So, to answer your questions:

 

1. Changing builds to allow any version to be installed: You should only need to have the newest version of the CVI Runtime installed on the user's machine. So if the user has at some point installed the newer version of the utility, they will have that RTE version. You could also rebuild your older versions to include the newest version of the Runtime Engine. The Runtime Engine is backwards-compatible with executables that were built to target older versions of the RTE.

 

2. How can I fix or uninstall a version that is not in Add/Remove Programs: It's unusual for the distribution to not make an entry in Add/Remove Programs. What version of CVI did you create these distributions with, and do the applications appear in the Start menu? You might check the application directory (Most likely C:\Program FIles\<Your Application>, and see if an uninstaller exists there. For older versions of CVI, we included an uninstall utility in the program directory. There should be no problem with having multiple versions of your program installed, though.

 

3. How can I change the installer to install on newer versions: Once a distribution kit has been made, it's not possible to change which version of the Runtime Engine is included with that distribution. If you have access to the source files, you can of course create a new distribution which includes that RTE.

 

 

I hope this helps, and please let us know if you have any further questions on this issue!

0 Kudos
Message 2 of 4
(4,027 Views)

This is not about the run time engine, but about my application.

 

I have a version, say 1.5 installed, and the user needs something from version 1.2, they have to uninstall 1.5 before they can install 1.2. That is what I would like to change, so the user is using 1.5 and then just installs 1.2 without having to uninstall 1.5.

LabWindows has always been like this, but it has only become a problem for this one project for me.

I am using LW CVI 2012

 

My application is installed properly, shows up from the Start button in Windows, and for 2 computers it is not in the Add/Remove applications. I don't know if it was there when it was originally installed (who checks that?), but it is there on other computers, and there is no uninstaller where it is installed.

I had to make a fake newer version, install that, and then uninstall that to remove my app.

 

I hope that makes this clear.

0 Kudos
Message 3 of 4
(4,024 Views)

Ken,

 

I understand now--I apologize for the confusion about what you were needing.

 

In CVI when you edit the distribution options, on the General tab you should see a setting for Upgrade Behavior, as follows:

 

cviupgrade.png

 

The default is "Use installer version", but if you choose "Side-by-side (do not upgrade)", the installer should install the new version as a separate file rather than overwriting the existing version of the file on the target system.

 

Another option would be to create a new distribution with a different name for each version of your software, but I understand that may not be a desireable solution for you. Hopefully the side-by-side method will work properly--let us know if you need any more assistance!

0 Kudos
Message 4 of 4
(4,004 Views)