localizationinstallationinstallshieldinstallshield-2012

InstallShield exclude files based on language selection


In an InstallSheild (2012 Spring to be specific) Basic MSI project, is it possible to exclude files that are installed based on the language selection when a user runs the installer?

If not, is my only option to write an InstallScript method to check ProductLanguage and have it clean up the install based on my the language selected? I'd rather not do it this way as it is one more thing to maintain, but needs must I suppose.

Thanks!


Solution

  • I use the following approach for our multilanguage setups:

    Switch to the "Organization \ Setup Design" panel. You should see that each of your components has the property "Condition".

    If you want to include a file / component only for a specific language you should create a a component for each support language, for ex. "MyComponent_EN" for english and "MyComponent_DE" for german.

    You can assign different conditions to the components, eg.

    ProductLanguage=1033
    

    If the component should only install if the user selected english and

    ProductLanguage=1031
    

    If the component should only install if the user selected german.

    In the case you wan't the setup to install files for german but none for english then just don't create a component for english.

    It is possible to create complexer conditions, as described here: http://helpnet.installshield.com/installshield18helplib/IHelpBuildCondition.htm