How can I perform a silent uninstallation as part of the upgrade process on Windows?

Author: BitRock Support       Date: December 14, 2007 11:05       Tags: Tips
Uninstallation
Windows
Upgrade Installers

You can retrieve the path to the uninstaller from the Windows registry and storing it in an installer variable.


<!-- In particular, this "${product_fullname} ${product_version}" string will make the installer detect its own previous installation. You will need to change it to match with the program and version you want to uninstall. -->
<registryGetMatch>

    <key>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\${product_fullname} ${product_version}</key>

    <name>UninstallString</name>

    <variable>uninstaller_path</variable>

</registryGetMatch>

Then, you can execute the path stored in ${uninstaller_path}, in case it exists:



<!-- run the uninstaller program only if ${uninstaller_path} points to an existing file -->

<runProgram>

    <program>${uninstaller_path}</program>
    <programArguments>--mode unattended</programArguments>

    <ruleList>

        <fileTest>

            <path>${uninstaller_path}</path>

            <condition>exists</condition>

        </fileTest>

    </ruleList>

</runProgram>

Similar solutions can be applied to detect a previous installation directory as well.

 

Back You should login to comment

 

You are
currently not
logged in.

 Log in 

or

Sign up