11-25-2008 10:55 AM
I have created and application (call it app A) and an installer for it as well using labview. However the app. A uses various databases that are unique per customer and are copied over by a different application (call it app. B) that also acts as a key Code verifcation (also made in labview). This second application is run by the installer after it has installed the original app A.
So for the first installation this works great....however if the customer requires a new database I would like him to insert the disk again and simply run through the installer again....which then calls app. B and verifies a key code and copies over the right databases. The problem here is that the installer looks at app. A and determines that it is the latest version and therefore sees no reason to resintall app. A and in the preocess does not run app. B to copy over the new databases.
My question is that is there any way to get around this problem....either by forcing it to re-install app. A again, eventhough it is already the latest version, so that it can run app. B again......or any other suggestions
I already have the option to directly run App. B from App. A (since the installer also installs App. B in order to run it) and copy over the files from the CD once the proper keycodes are entered but i would like to avoid this solution
Thanks
11-27-2008 11:23 AM
Hi Reza,
Thanks for the post and I hope your well.
I noticed you've not received a reply to your thread.
My only ideas were:
1) Increment the version of the installation - Im guessing this isn't an option as your using the same installer,
2) Get the install process to uninstall the previous installation first, if your willing to re-install the product.
Please reply, so we can work to a solution on this issue.
Kind Regards,
James.
11-27-2008 11:44 AM
An uninstallation before the re-installation is not a bad idea but how would you go about that, without asking the user to do it from the control panel?
And if so, is it possible to just uninstall the application and not the Run-Time engine so that the re-installation process does not take as long
thanks.
11-27-2008 11:55 AM
Hi,
Thanks for getting back so quick!
If you know the file path to the uninstaller, you could then use System Exec to call the command (bit like the cmd) to run the uninstaller.exe.
The run-time engine - that would be dependent on the uninstaller - and Im not sure if you can alter what is uninstalled programmatically. Maybe there is an silent uninstall. txt file ... but Im not sure.
Please let me know what you think,
Kind Regards,
James.
11-27-2008 12:37 PM
Hi,
It sounds like a good idea but ..how do I get the path to the uninstaller....is it where the program was installed, if so then yes i do have it, if not then I don't know where it could be ? And what would the command be as well?
In the 'Add/Remove Program' I always see 2 uninstallers, 1 for the application i installed and then 1 for the labview run-time engine that was also installed..... that is normal right?
If so then my understanding was that the installer would always create 2 uninstallers...1 for the labview run-time engine and 1 for the application ...... if so then I should be able to run only the uninstallation for the application, right?
thanks
11-28-2008 04:30 AM
Hi Reza,
Thanks for the update.
So yes - I can confirm the RTE is seperate.
In the cmd in windows I tried to run the setup.exe for Adobe (which gives the user options to uninstall).
Move through the directories,
c:\\
cmd Program Files
cmd Adobe
cmd Reader 8.0
cmd Setup Files
cmd AC76BA86-7AD7-1033-7B44-A81200000003
setup
However, in the system exec can put the whole path in. If you have an uninstaller (which is seperate to the setup.exe - the installer) than you can just call that.
The path I used for the setup exe was its location on drive c.
I hope this helps,
Kind Regards,
James.
11-28-2008 03:22 PM
From what I understand, this means i can uninstall by application without going into the add/remove programs and without uninstalling the Labview run-time engine, which is kinda contrary to what I have read in the forum so far.
But even if it is possible i don't see or can't find where the unistaller for my application would be. It is not with my application since all i see in my application folder is a *.exe, *.ini and a *.aliases file. But again I am sure it must be somewhere since I can do it from the ass/remove programs
So I guess my confusion now is where would the uninstallation files be and in what format or name would it be in?
Thanks again,
Reza
12-01-2008 06:17 AM
Hi Reza,
There seems to have been some confusion on my part - concerning LabVIEW versions.
The LabVIEW Installer Builder uses the Microsoft Installer system (MSI) to create Installers. As such it registers an installation with the Control Panel->Add & Remove Software component and this is the place Microsoft wants users to uninstall and/or manage already installed applications from. As such it has become very common nowadays and most people do expect to uninstall their software from there. Older versions of Application builder did however create an uninstaller.exe. You are also correct the the setup.exe will no longer uninstall/remove programs - I am sory I felt this was the case.
You can however still run the 'uninstaller' as this must happen in the add/remove option.
If you look for a key named
UninstallString. The key holds a value that Add\Remove Programs executes
when you click "Remove". You can execute the UninstallString from a command
line or programmatically. I have pasted an example below.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\9040110900063D11C8EF10054038389C\InstallProperties
DisplayName: Microsoft Office Professional Edition 2003
UninstallString: MsiExec.exe /I{90110409-6000-11D3-8CFE-0150048383C9} <-
You can execute this from the command line.
I hope this helps,
Kind Regards,
James.
12-01-2008 01:42 PM
Hi James,
Thanks for the reply. Bear in mind I am not too familiar with this stuff but how exactly can I get the uninstall string for my application.
DO I have to read and search the registry for it or can I get it straight from the application bulider.
Thanks
12-01-2008 03:15 PM