seamlessinstall
Posts: 4
Joined: Tue Jun 12, 2018 10:42 pm

Question to make sure Professional edition will work before I purchase (changing program name)

We have changed the name of our program slightly, from "Liberate" to "Liberate Desktop". We're going to install it into a different folder in Program Files (x86).

I need our installer to do the following...

1. Sense our current running program (called "Liberate.exe") via the process name and stop that process from running.

2. Delete the old program folder ("Liberate") in "Program Files (x86)".

3. Clear the Start Menu folder (called "Liberate").

4. Then it will install our new program (called "Liberate Desktop.exe") into a folder called "Liberate Desktop" and put the proper icons in the already existing Start Menu folder called "Liberate".

So not really that complex, just need to make sure the changing of the program name isn't an issue. My developer told me that we can definitely do all of this with the Professional edition, but I want to specifically ask to ensure that we can indeed do this before purchasing Advanced Installer Professional Edition. I appreciate the help! :idea:
Eusebiu
Posts: 4931
Joined: Wed Nov 14, 2012 2:04 pm

Re: Question to make sure Professional edition will work before I purchase (changing program name)

Hi and welcome to Advanced Installer forums.

Thank you for your interest in Advanced Installer.

Yes, what you described can be achieved with the "Professional" edition of Advanced Installer.

1. To detect and stop a process you can use the built-in custom actions as detailed in the "How to detect or stop a process" article.

2. The old version of your program will be removed automatically if you use the same Upgrade Code for the new version. You can set it in the "Product Details" page, "Product IDs" tab of your project.

3. The "Start Menu" folder should be removed automatically with the uninstallation of the old version.

4. The new version will install all the files/folders configured in the "Files and Folders" page of the project related to the new version.

Let me know if you have other questions.

Best regards,
Eusebiu
Eusebiu Aria - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
seamlessinstall
Posts: 4
Joined: Tue Jun 12, 2018 10:42 pm

Re: Question to make sure Professional edition will work before I purchase (changing program name)

Thanks for the prompt reply Eusebiu.

So for item #2, that was not installed by Advanced Installer. It was installed by another installer and remember, our current (old) version has a slightly different name (it's called "Liberate.exe" and installed in a folder called "Liberate" and we're installing "Liberate Desktop.exe" in a folder called ""Liberate Desktop". You're saying as long as we find out the "Upgrade Code" for the currently installed (old) version and set that code in our new installer, the software will be allowed to delete that folder from the drive? How do we find out the Upgrade Code for the currently installed "Liberate.exe" version?
Eusebiu
Posts: 4931
Joined: Wed Nov 14, 2012 2:04 pm

Re: Question to make sure Professional edition will work before I purchase (changing program name)

Hi,

Yes, if you use the same Upgrade Code in the new installer, it should remove the old version regardless its name and installation folder. The Upgrade Code can be taken by opening the old MSI package with Orca (in the "Property" table) or, maybe, from the project of that old installer.

Best regards,
Eusebiu
Eusebiu Aria - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Eusebiu
Posts: 4931
Joined: Wed Nov 14, 2012 2:04 pm

Re: Question to make sure Professional edition will work before I purchase (changing program name)

You're welcome. Glad to help.

Best regards,
Eusebiu
Eusebiu Aria - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
seamlessinstalll
Posts: 1
Joined: Wed Jun 13, 2018 2:19 pm

Re: Question to make sure Professional edition will work before I purchase (changing program name)

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?

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.

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.

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)?

Thank you so much for any guidance you can offer here.
Eusebiu
Posts: 4931
Joined: Wed Nov 14, 2012 2:04 pm

Re: Question to make sure Professional edition will work before I purchase (changing program name)

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
Eusebiu Aria - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
seamlessinstall
Posts: 4
Joined: Tue Jun 12, 2018 10:42 pm

Re: Question to make sure Professional edition will work before I purchase (changing program name)

I got the installer to open the uninstall dialog of the old software so the user can click through and uninstall old software. In the background you can see Advanced Installer installing the new software.

Is there a way to set a timer to pause execution of Advanced Installer and then after the timer expires it will check if the exe of the old version has been removed (indicating the old installer has uninstalled that old software) and only then proceed with new install?
Eusebiu
Posts: 4931
Joined: Wed Nov 14, 2012 2:04 pm

Re: Question to make sure Professional edition will work before I purchase (changing program name)

Hi,

Sorry for the delayed reply.

Did you launch the uninstall of the old version through a custom action? If so, when that custom action is executes, Advanced Installer should wait until the uninstallation of the old version is done and only then continue with the installation of the new version. Did you uncheck the "Wait for custom action to finish before proceeding" option for the custom action?

Best regards,
Eusebiu
Eusebiu Aria - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Building Installers”