Hi,
Forgive me, but I have yet another question. We previously used a scripted installer that produced an executable, not an MSI package, and I've never heard of this "upgrade code" you've mentioned. Should we still able to get this code from our old installer?
If that scripted installer produced Windows Installer based packages, then yes is should contain an MSI inside or next to the EXE setup file which has an Upgrade Code. You can also get that Upgrade Code from a
verbose log of the package installation.
If that old version is not MSI based, then you may only be able to removed it through a custom action by launching its "Uninstall" executable/shortcut (if it contains any).
As an alternative route, I found custom actions for checking whether a process is running, and then two different ones for close process and terminate process (not sure what the difference is).. but I can't seem to figure out how to chain the action like "check if process is running, if so, close/terminate it." How do you go about doing this? It says if the process is found running, the first action should create an AI_ variable to indicate that it is running. I'm guessing that should be one of the execution conditions of the close/terminate process action, but can't seem to find any such AI_ variable under the conditions available for those actions.
To achieve this you can proceed as described in the "
Custom Launch Condition Help" thread.
If this is possible, is there a way to create a third step of that chain to say "if process is found, close/terminate it, and then execute the uninstaller"? We have always used one installation path (which has now changed), so that's a start.
If you use a custom action to uninstall the old version, you can set for that custom action the same condition that you set for the stop process custom action.
As an alternative to these upgrade codes, is there any way that we can simply execute a Powershell script or use a similar process to at least initiate the uninstallation of our previously installed software package(s)?
Yes, you can use the Powershell built-in custom action to execute your Powershell code of you can launch a custom executable that uninstalls the old version of your software.
Best regards,
Eusebiu