Loading
Upgrading an application using a different language
I am working on an application that initially supported English (default) and Japanese only. We have added Chinese support for a new release, but during testing, we have found that an upgrade from the previous version on a Chinese OS will still come up in English (a typical clean install comes up correctly in Chinese). Does anyone know if this is by design? Are there any known workarounds? Any help or information would be greatly appreciated.

  • The old version of the software we are upgrading from was built with InstallShield X. I performed a test to try upgrading from a version built with InstallShield 2008 and Chinese was displayed without any problem. So it seems the version of InstallShield used for the build is also part of the problem, if not the sole cause.

     

    Does anyone know if this is a known issue or if there is a way to work around it?
    Expand Post
  • J Stechnij (Flexera Software)

    If this is an MSI based installation, localization is achieved through the use of language transforms (one for each supported language in the installation). Due to how Windows Installer implements support for transforms, transforms cannot be added, removed, or replaced during maintenance installations (which include small/minor upgrades and small/minor upgrade patches).

     

    The best solution to this issue would be to provide a major upgrade. Since a major upgrade is essentially a new installation, the transforms could then be changed.
    Expand Post
  • Thanks for the reply! Unfortunately we are using an InstallScript installation so I'm assuming the above wouldn't apply. Please correct me if I'm mistaken though, which as always would be quite possible :o
  • J Stechnij (Flexera Software)

    If I recall correctly, InstallScript does not have an equivalent to MSI major upgrades (at least not in the automatic sense).

     

    However, you could emulate major upgrade type behavior by changing the product code for your project, and then during an event such as OnFirstUIBefore, look for the old product on the machine (such as from its uninstall key) and launch the old product uninstall. The UninstallApplication function can simplify the process of uninstalling the older product.
    Expand Post

Loading
Upgrading an application using a different language