Duane Newman

.NET, Windows, Linux, gadgets, and other cool stuff

  • Blogroll

  • Flickr

    John Oliver CabinHand Blown Glass OrnamentsCades CodeIslands in the Clouds
  • My Del.icio.us

Checkbox behavior in InstallShield

Posted by duane on September 8th, 2008

This is the first in what will probably end up being a series on InstallShield and the little things that are insanely painful in an otherwise very useful tool.

I had to add a screen to an installer I’m working on that had a notice regarding this versions compatibility with other versions on our hardware and software.  This screen has a rich text area with the notice and then a checkbox to indicate that you have read the message.  When the checkbox is checked by the user the next button is enabled.

Seems simple enough.  However, I soon discovered that when you add a new checkbox and give it a property that InstallShield creates the property in the property table and enter “0″ (zero) for the value.  Seems correct, right?  Well, the problem I encountered was that the checkbox was always checked when the screen was first loaded.  Turns out that the checkbox is checked if the property is anything other than an empty string.  Changing the default value in the property table from “0″ to “” made everything work as desired.

4 Responses to “Checkbox behavior in InstallShield”

  1. elgreco Says:

    Thank you! Had some trouble finding this, it’s not very intuitive :)

  2. Some1 Says:

    The \”Right way\” to do that is to open Dialogs, edit the \English\ (or which ever lang you want) part and change the Default of the check box to False. (in the properties pane on the right side when you select the check box)

  3. fm Says:

    Thank you so much for sharing this tip!

  4. duane Says:

    Some1: thanks for that tip. I’ll have to keep that in mind on my next installer.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>