tmighty
tmighty

Reputation: 11389

How do I keep Inno Setup 6 from creating new signed uninstallers?

I have discovered a significant change between Inno Setup 5 and Inno Setup 6:

With Inno Setup 5, when I create a new .iss file, it asks for a new signed un-installer ONCE only for example like this:

Signed uninstaller mode is enabled. Using an external code-signing tool, please attach your digital signature to the following executable file: d:\dev\projects\signeduninstaller\uninsta-6.2.0f2e667e2eb.32".

When I delete the .iss and create the .iss file anew, it uses the existing signed un-installer.

When I use Inno Setup 6 however, and I delete the .iss file and re-create the .iss file, it asks for a new signed un-installer. Each time I re-create the .iss file, it creates a new signed uninstaller.

I don't like this behaviour. I re-create my .iss file programmatically each time it's required, and I do not want to create a new signed un-installer each time.

How could I have the old behaviour back?

Thank you.

Upvotes: 3

Views: 376

Answers (1)

Martin Prikryl
Martin Prikryl

Reputation: 202118

This is probably a side effect of this Inno Setup 6.0.4 change

Windows AppLocker publisher conditions are now supported by Setup up to and including the file name level.

Now the uninstaller binary includes the application metadata. So every time you change one of these directives: AppPublisher, AppCopyright, VersionInfoOriginalFileName, VersionInfoProductName, VersionInfoProductTextVersion, VersionInfoProductVersion (or one of the directives used as default source of these, like AppVersion, VersionInfoTextVersion, VersionInfoVersion), the uninstaller is also updated. What was not the case before.

There's no way to restore the previous behaviour.

You might be able to hack it by adding a wrapper script around your signing command that will sneak in pre-signed uninstaller (without the metadata).

Upvotes: 3

Related Questions