1
votes

I've written an Inno Setup script with multiple components. The [Run] component of the script includes these lines, so there could be up to five checkboxes available on the Finish screen.

My question is this: Can I make these options mutually exclusive, so that the user can only choose one? In other words, can I replace the checkboxes with radio buttons?

[Run]
Filename: "{app}\vDosWP51.exe"; Flags: postinstall skipifsilent unchecked; Description: "&Launch vDosWP51"; Components: InstallForWP51
Filename: "{app}\vDosWP61.exe"; Flags: postinstall skipifsilent unchecked; Description: "Launch vDos&WP61"; Components: InstallForWP61
Filename: "{app}\vDosWP62.exe"; Flags: postinstall skipifsilent unchecked; Description: "Launch &vDosWP62"; Components: InstallForWP62
Filename: "{app}\vDosWPO31.exe"; Flags: postinstall skipifsilent unchecked; Description: "Launch &Office 3.1"; Components: InstallShell\InstallOffice31
Filename: "{app}\vDosSH40.exe"; Flags: postinstall skipifsilent unchecked; Description: "Launch &Shell 4.0"; Components: InstallShell\InstallShell40

One complication is that one to five of these options might be available, depending on which components the user chooses to install.

Since I don't know which of these five choices might be on the Finish screen, I don't see how I could do something like this (though it seems to point in the right direction):

How to execute files in Inno setup with multiple radio buttons?

Thanks for any help with this.

1

1 Answers

0
votes

There is no method of doing that with the post-install [Run] entries. The closest you could come would be to add a custom page that offered the options and show that beforehand, but that has several downsides (particularly if your install can potentially require a reboot). Still, let me know if you're interested in pursuing this and I'll expand this answer.

The other way to do it would be to do away with the separate exes and just have one that you launch in all cases -- either a simple launcher app that asks which of the (already installed) other apps to launch, or actually integrating the functionality of all of the apps into a single one. Obviously I don't know what your app actually is, but it seems odd to have to launch one specific to a version of another app -- why can't the app itself support all of them?