Aug 08, 2011 09:00 AM
Customizing Setup Prerequisites dialog
I have an InstallScript MSI project that is wrapped in a skin for our product branding scheme. What happens though when the setup prerequisite screen comes up is that the default image of the PC shows up on the left-hand side and obscures the skin graphic. I have the DialogSetInfo (DLG_INFO_ALTIMAGE, "", TRUE) call at the start of the OnFirstUIBefore() event handler so that it does not appear in the main project, but is there a way to remove the graphic in the setup prerequisites dialog?
Aug 09, 2011 10:00 AM
I was just noticing the same thing, I have a 'skinned' installscript with prereqs and need to modify not only the computer, but some of the boxes on there as well. I don't see it listed as a seperate dialog. hopefully someone can help us out!!
Nov 09, 2011 03:15 PM
i ended up having to make my own prereq dialog box. took a while but it looks and behaves better than installshields version. still don't understand how you can have a new feature for your customers, but don't give them full access to it.
Nov 10, 2011 06:57 AM
I've event tried to delete the bitmap of the computer icon from any dll/exe I could find in the "redist" folder using PE Explorer. Still no luck :confused:
looks like I've found a slightly hacky work around. Using PE Explorer I replaced the bitmap images (10650 + 10651) with solid green images of the same size in the following files in the "C:\Program Files (x86)\InstallShield\2011\Redist\Language Independent\i386\ISP\" folder:
setup.ocx inside setup.zip
I'm not sure which file did the trick but it's good enough for me 🙂
Mar 13, 2012 09:11 AM
Do you have a something that you'd be willing to share? I need a consistent look/feel across all dialogs.
I can give you the short version of it, there's too much code to paste in here as it took me a while.
All I ended up doing was creating a new dialog using the editor, called it PreReq. Added a listbox to it, as well as the standard 'X's' and checkmarks that you see on these prerequisite boxes (signifying if something is installed or not).
Once that was made, I did the following in my script:
1. Created a string list which will be used to populate the listbox
2. Created a routine to determine what is/what needs to be installed. Result was added to the string list regardless if it was already installed or not, just changed the wording (i.e. "MS XML 4.0 SP2 found" or "MS XML 4.0 SP2 needs to be installed"). Also set individual booleans to whether something 'found' was true or not.
3. I then called the DefineDialog function. Enabled/disabled the X's or checkmarks based on the booleans ("if XML is found display checkmark, else display red X")
4. called CtrlSetList, which displays the contents of the listbox.
5. this basically makes a 'passable' prereq dialog which customers can understand.
6. At this point if they click next I launch the installation of all of my prereqs. I display an SdShowMsg window ('now installing XML...') which closes once it's done installing. I also update the 'X' with a green checkmark in the prereq window and it moves on to the next prereq.
It took a while and some trial and error, but that's it in a nutshell.