cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
iPAQMike
Level 4

Multiple EULAs without coding?

Product: InstallShield 2008 (version 14) Premier

I am learning IS and then am training others in the group at work on how to use it. IS does a lot of stuff, but it's also terribly complicated. I am trying to define the most simple way to do things because not everyone in our group is a software developer like myself.

Here is the process I have for adding non-English language support:

1. Switch to Project Assistant mode
2. Go to Installation Interview and tick Yes for "Do you want to display a License Agreement Dialog".
3. Click the Browse button to select my jolly EULA file.
4. Next, go to the Installation Localization section of Project Assistant and add support for the languages this installer will support.

The Installation Localization step provides tables that associate a string used in the program, cryptic as that is, with the selected language. But I have found no way to specify the localized EULA file. It's as if multi-lingual support is almost supported in the UI.

I have searched the IS UI several times through in each of the view modes. I have searched help. I have searched InstallShield forums. I have searched Google. I have searched for the purpose of life. None of this has given me a simple answer of how this can be done without having to write script code.

Please, will someone explain how this is done as simply as possible?

Greatfully,

Mike Welch

Keywords for others to find with search: Internationalization, Globalization, Localization, Localize, Localized, EULA, eulas, End User License Agreement, Simple, License Agreement Dialog, Suicide
Labels (1)
0 Kudos
(7) Replies
RobertDickau
Flexera Alumni

What type of project? For MSI, you can visit the dialog editor view, look for LicenseAgreement, and expand it to show the different languages in your project; select each one in turn, clicking the control containing the license agreement text, and use the File Name property to browse for each .rtf file.

For InstallScript projects, you can copy identically named files (by default license.rtf, I think) into the appropriate language folder in Behavior and Logic > Support Files/Billboards > Support Files.
0 Kudos
iPAQMike
Level 4

Thanks for the reply Robert.

I thought I included all info :eek: I'm building an IS installer, not MSI.

Along those lines, has MSI proliferated well enough that we can depend on the installer being there? That's been my chief concern with it.

Yes, the default is license.rtf, I've noticed it's in the XML regardless of what I specify.

Okay, I tried working in that area, but I used different filenames because I thought not doing so would cause a conflict.

By "appropriate language folder", are you refering to the UI's treeview and copying the files into that? Otherwise, if I need to have folders in the project directory, what are the appropriate names?

Thanks. This detail is the only thing I haven't been able to figure out. I should try MSI too to see if that UI is easier to work with, but please tell me about the dependability of MSI.

Much thanks!

Mike
0 Kudos
iPAQMike
Level 4

No luck.

Hopefully I've attached a screen capture of what I've done with this. Maybe we're talking about different things?

Thanks!
0 Kudos
iPAQMike
Level 4

By golly I figured it out! I've read countless entries in the forums about this but none of them mentioned what Robert meant by "appropriate language-specific folder". What's that? A 3-letter abbreviation? Spelled out? 2-letter abbreviation maybe? Code page?

Hopefully I will make this clear for other noobs like my own self, here's how to add multiple internationalized localized globalized [SIZE="1"][sigh...] [/SIZE]EULAs to work with non-MSI installers:

1. Switch to Project Assistant mode because it's pretty simple.

2. Select Installation Localization (last item just before Build Installation).

3. Add your jolly language by putting a tick mark in the language(s) you want to support [SIZE="1"][note: I'm using Premier edition which has all language packs, if you don't see the language you want you may have to spend more $$$ to get support for it][/SIZE]

4. Note the string table to the right. Some strings are automatically translated for you by InstallShield, while others are not. Because the variable names in the table are meaningless unless you spend every day of your life working with InstallShield, try switching back and forth from your default language to the new language to help you determine what the variables in the table means. In my case, I create 4 shortcuts and the shorcuts I created in English were not localized by InstallShield. Instead the destination folder for German was NewDestination [or something like that] and the shortcuts were called NewShortcut1, NewShortcut2, NewShortcut3...etc. Freaked me out Jack! So, for testing you can just copy the value from your default language for these fields into the new language's fields, otherwise you'll flip out when you see the Start Menu :rolleyes:

5. Now switch back to Installation Designer mode.

6. Under the Behavior and Logic node of the treeview, select Support Files/Billboards.

7. The first node at the top of the second tree shows Support Files. This is an area that is reserved for files that are not part of the program you are installing, but rather are part of the installer itself. Stuff that you put here will be deleted when the installation is complete. It is here that you add localized content for the installer.

8. You should see each of the languages you selected back in step 3. Leave InstallShield for a second and go to your file browser or command prompt if you're a real geek like me. What you are going to do is create a subdirectory under your main project's files folder for each language you want to support. The name of this folder should be the mysterious "appropriate language-specific folder" for that language. In my case, I have English and German support in the program I am installing, so my installer needs to support both English and German too. So the location where I store the source files for this project looks like this:

[FONT="Courier New"]Directory of C:\InstallShield 2008 Projects\MyProj\Files\

02/03/2008 01:41 PM .
02/03/2008 01:41 PM ..
02/03/2008 01:41 PM 0407
02/03/2008 01:41 PM 0409
12/17/2007 11:32 AM 538,514 InstallThisFile1.exe
12/17/2007 11:46 AM 538,514 InstallThisToo.ini
12/17/2007 11:28 AM 538,514 MeTooMeToo.abc
[/FONT]
See also: attached image at end of this post for what it looks like in InstallShield


See the 0407 folder? That's the identifier for German. 0409 is the identifier for English. I have one license.rtf in 0407 and another license.rtf in 0409. InstallShield then looks in this folder at runtime and extracts the appropriate file depending on the language either InstallShield picks, or if you make the language selection dialog available, the language the user selects.

I couldn't find anything in the documentation that said what the "appropriate language-specific folder" should be, so after trial-and-error experimentation I guessed the right one. :cool:

Below is a table from somewhere in the 2000 page InstallShield User's Guide (PDF) that shows the language IDs. They are different if you are building an MSI file (that's the second column).

Whew!

Language Name InstallScript MSI
Basque 0x042d 1069
Bulgarian 0x0402 1026
Catalan 0x0403 1027
Chinese (chs) 0x0804 2052
Chinese (cht) 0x0404 1028
Croatian 0x041a 1050
Czech 0x0405 1029
Danish 0x0406 1030
Dutch 0x0413 1043
English 0x0409 1033
Finnish 0x040b 1035
French Canadan 0x0c0c 3084
French 0x040c 1036
German 0x0407 1031
Greek 0x0408 1032
Hungarian 0x040e 1038
Indonesian 0x0421 1057
Italian 0x0410 1040
Japanese 0x0411 1041
Korean 0x0412 1042
Norwegian 0x0414 1044
Polish 0x0415 1045
Portuguese Braz0x0416 1046
Portuguese 0x0816 2070
0 Kudos
RobertDickau
Flexera Alumni

Actually, the source folder names shouldn't matter. By "appropriate language-specific folder" I just meant to copy the English version of license.rtf---wherever it is on the build system---into the English icon (the one you've selected in your screenshot) under Support Files, the German version of license.rtf into the German icon, and so on.
0 Kudos
iPAQMike
Level 4

Hmm. I had the files in folders like ENG (english) GER (german) ESN (spanish) and it didn't work. I changed nothing other than the folder name and it started working.

Maybe renaming things caused some kind of internal linkage to meld. All I know is it finally worked.

Robert, I had one other question that I'm hoping you can answer. To quote myself:

Along those lines, has MSI proliferated well enough that we can depend on the installer being there? That's been my chief concern with it.


At this point, about what percentage of the Windows desktops out there have the necessary MSI components already on the desktop? The last time I looked into it, we weren't sure our users systems had support. That was with a different company and our customer base were CPAs who depreciate their computers in such a way that they don't upgrade as often as probably the mainstream.

Thanks!

Thanks!
0 Kudos
RobertDickau
Flexera Alumni

Mike,

To quote you quoting yourself:
Robert, I had one other question that I'm hoping you can answer. To quote myself:
Along those lines, has MSI proliferated well enough that we can depend on the installer being there? That's been my chief concern with it.



Please see the MSI help topic "Released Versions of Windows Installer"; some version or other of MSI has shipped with Windows 2000 and later.
0 Kudos