Skip to content

Configure Uninstaller

This page allows you to customize the properties of the uninstaller created by your package.

Control Panel Description

The uninstaller automatically adds an entry in the Add/Remove Programs section of the Windows Control Panel, which is the typical place users access to uninstall applications.

Enter a descriptive text for the Control Panel entry, such as My Application 1.7.

Warning

Adding an entry to the Add/Remove Programs list requires administrative privileges. See UAC elevation for more details.

Unique Registry Key

The Control Panel settings are stored in the registry, and you must specify a unique subkey name (e.g., CompanyName_ApplicationName_VersionNumber or a GUID).

Info

At runtime, the unique registry key used to store uninstall information can be retrieved using the %PBUNINSTREGKEY% variable. This can be useful for checking installation status or preventing reinstallation.

Uninstaller EXE Path

Specify the full path where the uninstaller executable will be created, typically within the main extraction folder (%DESTPATH%). For example: %DESTPATH%\Uninstall.exe. Avoid placing the uninstaller in system folders.

The uninstaller file automatically removes itself during the uninstall process.

A .log file is generated alongside the uninstaller, recording the changes made by the package. Both files are automatically removed during uninstallation.

Info

The uninstaller and log files are created between the "After File Extraction" and "Finalization" events. To include custom actions for the uninstaller, add them to the "After File Extraction" event or use specific uninstaller events.

Control Panel Uninstaller Icon Reference

Specify the icon to represent your application in the Add/Remove Programs list. This can be:
- A .ico file (e.g., %DESTPATH%\MyIcon.ico).
- An icon resource within an .exe or .dll file, followed by the resource index (e.g., %DESTPATH%\Uninst.exe,0).

Additional Options

Remove Non-Deleted Files at Windows Startup

Enable this option to ensure the uninstaller removes locked files (e.g., in-use files or shared DLLs) during the next Windows startup.

Do Not Add an Entry to the Add/Remove Programs List

Enable this option if you do not want the package listed in the Control Panel. Ensure users have another way to run the uninstaller.

Append Uninstall Data to Existing Logs

If an uninstaller .log file from a previous installation exists, this option allows the uninstaller to append new changes to the existing log instead of overwriting it. This ensures that changes from both installations are properly removed during uninstallation.

This is useful for packages that allow users to install different components over time.

Do Not Display the Uninstall Progress Monitor

Enable this option to run the uninstaller silently without showing a progress monitor. Users will not see feedback during the uninstall process.

Do Not Check for Administrative Privileges Before Uninstalling

By default, only administrators can run uninstallers. Enable this option to allow all users to uninstall the package.

On Windows Vista and later, uninstallers typically require elevation to Require Administrator. If this option is enabled, the requested execution level will change to Highest Available.

Silent Uninstaller

To create a silent uninstaller:
1. Set the %SILENT% variable to 1 using custom actions in the "Uninstall Initialization" event.
2. This prevents all prompts (except unexpected errors) during uninstallation.

If you want to enable silent mode via command-line, use the custom action template Enable Silent Mode from Package Command Line and add it to the "Uninstall Initialization" event.