How to install localized prerequisites

Got a problem you cannot solve? Try here.
Post Reply
schlaup
Posts: 18
Joined: Wed Dec 06, 2006 10:23 am

How to install localized prerequisites

Post by schlaup »

I am evaluating InstallAware and I am wondering how I can install localized application runtimes / prerequisites?

I.e. the localized language packs for .NET 2.0?

Ok, I could install the .NET 2.0 Framework without a language pack on a foreign OS.

But, what about IE6? I would guess that it is not even possible to install the english version of Internet Explorer on a foreign OS. But even if it is possible, the user would be very annoyed if I installed an English IE on a German OS, right?

So, what is the way to go?

Peter

P.S.: Or even a basic prerequisite like the Windows Installer runtimes in a wrong language would be annoying to the user.
MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Post by MichaelNesmith »

You need to take care of this manually. Shipping all the prereqs in all available languages would make the InstallAware setup size near 10 GB, if not more!

You can try two things:

1) Write your own scripts for the localized prereqs, and add them as new runtimes into the IDE (you can even post your custom runtimes here in the Plug-Ins section, so other people can benefit from your work). Details on this process are available here:
http://www.installaware.com/installawar ... s_view.pdf

2) Take the quick-and-dirty approach, and simply replace the native runtime files used by the pre-built IA runtimes with the localized versions.
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
schlaup
Posts: 18
Joined: Wed Dec 06, 2006 10:23 am

Post by schlaup »

Thanks for the quick response!

1. I noticed that most of the prerequsites are checked and installed using plug-ins. Is the source available for me to modify if needed? (ie. mSQLExpress.dll)

2. To replace the binaries in the runtime or plug-in folders, how do I extract the files from the localized Microsoft MSI or EXE files?

3. Could I copy the runtime script and the plug-in folder to make a foreign version? I would like to have two versions available. I.e. "Windows Installer 3.1" and "Windows Installer 3.1. German".

4. Could I use Compiler Conditions to include the German prerequisites in my setup script to build the English or German version of my setup?

Peter
MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Post by MichaelNesmith »

1. You shouldn't need to use the source - just replace the actual binary files used.

2. This varies by technology and runtime. Sometimes you just run the EXE file and copy the temp folder. At other times, you use the provided Setup Decompressor to silently process an MSI file. And so on.

3. No, this wouldn't work. You will need to create a new runtime and natively run the German MSI installer - using one script that checks for it and another that installs it (as described in the whitepaper I linked to in my last post).

4. Of course, you can definitely do that!

As you can see by the newer runtimes, the trend is to move away from plug-in based runtime implementations to script-based runtime implementations. So I'd suggest that you take the same approach with your new custom runtimes. Please ask if you run into any difficulty during the process or have any questions!

Golden rules:

a. Use the Setup Decompressor. If it doesn't provide benefits, see if you can find the extracted files in the TEMP folder after starting the native runtime installer. This will make sure your runtime script is high-compression-aware.
b. Use File Bag to add the requisite files to your setup. This will make sure your runtime script is web-media-block aware.
c. Use (Un)Install MSI Setup for MSI files and Run Program for EXE files. Set PROGRESSMODE to MARQUEE for EXE files (and set it back to nothing after you're done). This makes sure your runtime script is optimized for the best end user experience.
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
schlaup
Posts: 18
Joined: Wed Dec 06, 2006 10:23 am

Post by schlaup »

Ok, thanks! I believe I can install SQL Express German now. (I have not fully tested it yet, though.)

While implementing the test setup I noticed that the settings for the runtimes (prerequisites) are shared accross all setups. Is this correct?

I.e. I specify an Instance name for SQL Express in one setup project. Than I create a new setup project and add SQL Express as well and specify a different Instance name. If I go back to my first project the Instance name has changed to the second project.

That does not make sense. The prerequisite settings should be saved with each setup project and not shared accross all projects, right? And I guess they will be lost when I move the project to another machine or reinstall InstallAware!?

Did I do something wrong or is this a bug?

Peter
MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Post by MichaelNesmith »

All prereqs are shared scripts which are added from the runtimes folder in your InstallAware folder. All you have to do if you want to associate a particular script with a single project is copy the script files out of that folder, and then into your project folder (or another repository).

At that point you can add them to your project, in place of the common include scripts. Use the Project Manager window to remove the common scripts and add the new ones instead.
Michael Nesmith
Install[b]Aware[/b]
[i]Home of The Next Generation MSI Installer[/i]
Get your free copy today - http://www.installaware.com/
Post Reply