InstallShield Tips and Techniques

June 26, 2007

Dress up the dialogs with customized bitmaps

Filed under: Dialogs — shieldmaster @ 12:05 am

I absolute detest the generic bitmaps that InstallShield provides with the dialog screens.  For a market leading product – why are the bitmaps so kindergarden looking? 

There are two distinct types of bitmaps used with the product line:  the dialog bitmap and the banner bitmap.  The dialog bitmap is used on the “exterior” dialogs, typically the Welcome and Summary – but is also found on the Maintenance dialog screen.  Here is a sample image:

exterior_bitmap_orig.jpg

 There is another bitmap used as the banner on all of the interior screens, here is a sample image:

 interior_bitmap_orig.jpg

There is a lengthly document that has been posted on the InstallShield Tips and Tricks webpage

http://www.installshield.com/news/newsletter/details.asp?source=isd 

Here is the specific link to the article: 

http://www.installshield.com/news/newsletter/0301-articles/DialogBitmaps.asp

Unfortunately it is very confusing to read, so I will attempt to boil the process down to the essentials.

How to change all Exterior Bitmaps

Navigate to the Direct Editor and look at the contents of the binary table – here is a sample:

directeditor_binary.jpg

Look for any entry that has “ISDialogBitmap.ibd”  – which is the bitmap used in the InstallShield exterior dialogs (they use the legacy extension “.IBD” instead of “.BMP”.  If you replace the path entry with a path to your customized bitmaps they will appear in all of the exterior bitmaps.

How to change all Interior Bitmaps

Look for any entry that has “ISDialogBanner.ibd”  – which is the bitmap used in the InstallShield interior dialogs (they use the legacy extension “.IBD” instead of “.BMP”.  If you replace the path entry with a path to your customized bitmaps they will appear in all of the interior bitmaps.

Bitmaps specifics

I recommend that you take a copy of the “ISDialogBitmap.ibd” and “ISDialogBanner.ibd” bitmaps (rename them to .BMP) and have the Graphics group get the specifics on the attributes.  Note that on the bitmap for the exterior dialogs, the image can only be on the left side of the bitmap.  Everything in white will be transparent in the dialog and all of your text will be superimposed.

Here is the location for these default bitmaps on a InstallShield v11.0 project:

C:\Program Files\InstallShield 11\Redist\Language Independent\OS Independent

Customized Bitmap Storage

If you read my post on “Path Variables and Project Organization” then you realize the best approach would be to store the bitmaps in a location that any InstallShield project can access.

I typically create a storage location and place all components used accross multiple InstallShield projects.  Here is a sample structure of reference files stored along side the InstallShield projects. 

ref_directory.jpg

I can store the customized bitmaps in this location:

C:\Project Source\Reference Files\Bitmaps\Dialog Bitmaps

 If I use the technique discussed about Path Variables, then I would add a new Path Variable to the project “PATH_TO_DIALOG_BITMAPS” and create a path reference such as:

<ISProjectFolder>..\..\..\..\Reference Files\Bitmaps\Dialog Bitmaps

Then within the Direct Editor, I would simply alter the source path to reflect this:

 directeditor_binary2.jpg

Imported Dialogs

Doesn’t seem to be on topic, but guess what happens if you export one of your dialogs that has a customized bitmap?  Turns out when you import the dialog into another InstallShield project, you will see a strange file “InteriorBin1” littered somewhere in your project structure.  This is the way InstallShield attempts to handle the customized interior bitmap.  Don’t believe me – just take the file and add the .BMP extension and open it with Paint.  If you want to get rid of it, simply go back into the Direct Editor and alter the path reference for this to be your customized interior banner bitmap and rebuild.

Hope this helps!

Charles

Advertisements

1 Comment »

  1. Possibly of interest:

    A simpler way to modify the images on the interior and exterior MSI dialog boxes is to use the Project Assistant: the Installation Interview page has a simple editor in the More Options > “Use custom images on dialogs” item.

    Also, Basic MSI projects in InstallShield 2008 have some sets of updated dialog box bitmaps called “themes”, examples of which you can see here: http://www.macrovision.com/company/news/newsletter/tips/msi_themes_is2008.shtml

    Comment by Robertd — June 29, 2007 @ 12:21 pm


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.

%d bloggers like this: