mihai.petcu
Posts: 3860
Joined: Thu Aug 05, 2010 8:01 am

Re: Problem with my own dictionary

Hi Phil,

We have tested this on a Windows 7 x86 German machine and all works as expected. It seems some strings are not correctly translated, so in order to properly localize the values the test machine should be a native German one in this case.

Can you please specify whether you tested the package on German or French native machines?

All the best,
Mihai
Mihai Petcu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Alpicus
Posts: 108
Joined: Sat Feb 16, 2008 5:29 pm
Location: Switzerland
Contact: Website

Re: Problem with my own dictionary

Hi,

the 3 machines I've tested have Windows in english and French (Switzerland) for the Regional Settings > Format and Switzerland for Location

HTH,

Phil
mihai.petcu
Posts: 3860
Joined: Thu Aug 05, 2010 8:01 am

Re: Problem with my own dictionary

Hi Phil,

This won't work. You should test the package on an OS with either French or German native languages.

All the best,
Mihai
Mihai Petcu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Alpicus
Posts: 108
Joined: Sat Feb 16, 2008 5:29 pm
Location: Switzerland
Contact: Website

Re: Problem with my own dictionary

Hi,

The problem seems in english (by coincidence, the machines are only in Win7 and 2008R2). In the .ail, the "en" translation is implemented but not displayed during the installation.

HTH,

Phil
mihai.petcu
Posts: 3860
Joined: Thu Aug 05, 2010 8:01 am

Re: Problem with my own dictionary

Hi Phil,

I'm afraid I don't understand.

Our testing show the package is localized as follows:
- native English machine => install package has English localization
- native German machine => install package has German localization
- native French machine => install package has French localization

Can you please confirm or infirm providing more details about the OS circumstances?

All the best,
Mihai
Mihai Petcu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Alpicus
Posts: 108
Joined: Sat Feb 16, 2008 5:29 pm
Location: Switzerland
Contact: Website

Re: Problem with my own dictionary

Hi,

Gosh ! By checking the .ail file, I've just found out that there was ignore="en" therefore It seems normal that in an english Windows machine (whatever is the regional settings btw), the only translation item with "en" is not displayed.

Thanks for your support and sorry for this mess.

Best Regards,

Phil
Alpicus
Posts: 108
Joined: Sat Feb 16, 2008 5:29 pm
Location: Switzerland
Contact: Website

Re: Problem with my own dictionary

Well,

I don't understand anything anymore. Even if I remove the ignore="en", the message is still not translated.

The only problem is for the message with ENTRY id="Property.PKLSETUPTYPEWARNING" (in the end of the XML file below) and only in english. Btw it's the only translation which is completely new (without an existing label in english). This ENTRY id is related with a UI custom action : MsgBox Session.property("PKLSETUPTYPEWARNING"), 4144, Session.property("Setup") + " " + Session.property("ProductName")

Here is a portion of my .ail :

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DICTIONARY type="multilanguage">

<!-- Readme intro -->
<ENTRY id="Control.Text.ReadmeDlg#ReadmeText">
<STRING lang="de" value="..\Readme intro\readme_intro_de.rtf"/>
<STRING lang="fr" value="..\Readme intro\readme_intro_fr.rtf"/>
</ENTRY>

<!-- Shortcuts -->
<ENTRY id="Shortcut.Description.Antigua_App_Folder">
<STRING lang="de" value="Antigua - Informatiklösung für Vorsorgeeinrichtung"/>
<STRING lang="fr" value="Antigua - Solution pour caisses de pensions"/>
</ENTRY>

<!-- Features -->
<ENTRY id="Feature.Description.Antigua">
<STRING lang="de" value="Hauptanwendung"/>
<STRING lang="fr" value="Application principale"/>
</ENTRY>

<!-- Customize Dialog -->
<ENTRY id="Control.Text.CustomizeDlg#PKLDiskCost">
<STRING lang="de" value="Speicherplatz"/>
<STRING lang="fr" value="Utilisation disque"/>
</ENTRY>

<ENTRY id="Control.Text.ExitDialog#PlayTutorialText">
<STRING lang="de" value="Das Lernprogramm starten (Auf fransösisch)"/>
<STRING lang="fr" value="Lancer le tutoriel"/>
</ENTRY>


<!-- PKL Data Dialog -->
<ENTRY id="Dialog.PKLDataFolderDlg">
<STRING lang="de" value="[Setup] [ProductName]"/>
<STRING lang="fr" value="[Setup] [ProductName]"/>
</ENTRY>
<ENTRY id="Control.Text.PKLDataFolderDlg#Title">
<STRING lang="de" value="Data Verzeichnis auswählen"/>
<STRING lang="fr" value="Choisissez le Répertoire Data"/>
</ENTRY>


<!-- PKL Reports Dialog -->
<ENTRY id="Dialog.PKLReportsFolderDlg">
<STRING lang="de" value="[Setup] [ProductName]"/>
<STRING lang="fr" value="[Setup] [ProductName]"/>
</ENTRY>

<!-- PKL Misc -->
<ENTRY id="Property.PKLSETUPTYPEWARNING">
<STRING lang="de" value="Informationen für ANTIGUA Installationvarianten&#10;&#13;&#10;&#13;Vollständig : ZWINGEND EINMAL diese Variante auf einem der Arbeitsplätze auswählen, um die gemeinsamen Elemente aller Antigua-Benutzer zu installieren (Basisdaten und Dokumente).&#10;&#13;&#10;&#13;Typisch : diese Variante auf allen anderen Arbeitsplätze auswählen."/>
<STRING lang="en" value="Informations for installation type of ANTIGUA&#10;&#13;&#10;&#13;Full : select ABSOLUTELY ONCE this type for one of the workstation to install the common items of all Antigua users (standard data and reports).&#10;&#13;&#10;&#13;Typical : select this type for all other workstations."/>
<STRING lang="fr" value="Informations pour type d'installation ANTIGUA&#10;&#13;&#10;&#13;Complète : sélectionner OBLIGATOIREMENT UNE FOIS ce type sur un des postes de travail pour installer les éléments communs à tous les utilisateurs Antigua (données de base et documents).&#10;&#13;&#10;&#13;Typique : sélectionner ce type sur tous les autres postes de travail."/>
</ENTRY>
</DICTIONARY>

TIA,

Phil
Cosmin
Posts: 5797
Joined: Tue Jul 10, 2007 6:39 pm
Contact: Website

Re: Problem with my own dictionary

Hi Phil,

Please note that the project language is not localized. So if your project language is English, the installer will use the default values in your project. It won't use the English values you specified in your custom dictionary.

The base language is added to your dictionary so you can translate the strings for other languages more easily. Why would you want to localize the project language? You can simply set the default value directly in your project.

Regards,
Cosmin
Cosmin Pirvu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Alpicus
Posts: 108
Joined: Sat Feb 16, 2008 5:29 pm
Location: Switzerland
Contact: Website

Re: Problem with my own dictionary

Hi Cosmin,

How can I set the default value in a custom action ?

My custom action is a VBScript to display a message. The script text is : MsgBox Session.property("PKLSETUPTYPEWARNING"), 4144, Session.property("Setup") + " " + Session.property("ProductName")

TIA,

Phil
mihai.petcu
Posts: 3860
Joined: Thu Aug 05, 2010 8:01 am

Re: Problem with my own dictionary

Hi Phil,
How can I set the default value in a custom action ?
Usually a default value is the initial value of property. This value is usually set when declaring the property.

If you use a Session.Property object to reference an installer property inside your custom action, then the default value of the public property is the one set in your Advanced Installer project.

All the best,
Mihai
Mihai Petcu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Alpicus
Posts: 108
Joined: Sat Feb 16, 2008 5:29 pm
Location: Switzerland
Contact: Website

Re: Problem with my own dictionary

Hi Mihai,

Thanks for the answer. It's almost working : as it's a message how can I insert some CRLF in the default value of the property as I've done in the dictionary (.ail) with the following string &#10;&#13; ?

TIA,

Phil
mihai.petcu
Posts: 3860
Joined: Thu Aug 05, 2010 8:01 am

Re: Problem with my own dictionary

Hi Phil,

Those are CRLF code references for HTML, not VBScript.

In VBScript, you should use:

Code: Select all

chr(ASCII_code)
For CRLF you can use the following occurance:

Code: Select all

VBCrlf
All the best,
Mihai
Mihai Petcu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube
Alpicus
Posts: 108
Joined: Sat Feb 16, 2008 5:29 pm
Location: Switzerland
Contact: Website

Re: Problem with my own dictionary

Hi Mihai,

The script text is : MsgBox Session.property("PKLSETUPTYPEWARNING"), 4144, Session.property("Setup") + " " + Session.property("ProductName")

I tried this : Text1 + VBCrlf + Text 2
but all the text is displayed : Text1 + VBCrlf + Text 2
instead of executing the CRLF

How can I write the CRLF in the default value of the property ?

TIA,

Phil
mihai.petcu
Posts: 3860
Joined: Thu Aug 05, 2010 8:01 am

Re: Problem with my own dictionary

Hi Phil,

Unfortunately, our support boundaries do not cover debugging or creating custom actions.

You can try each of the following in a .VBS file, execute it outside the installer and see the result:

Code: Select all

msgbox "Text 1" + VBCrlf + "Text 2"

Code: Select all

msgbox "Text 1" & VBCrlf & "Text 2"
To debug a VBScript custom action, you should use MsgBox occurrences.

All the best,
Mihai
Mihai Petcu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”