Archive: Multi-language, multi license text files !?


Multi-language, multi license text files !?
Sorry if I'm being stupid but I've searched the forums, the documentation and the examples to no avail.

How do I use multiple license text files in a multi-language install? The manual mentions LicenseLangString, but I cant figure out how this is supposed to work, and I can find no examples of its use nor references to it in the forum. My best guess so far (that doesn't work) is to include the following:

LicenseLangString LicenseRTF ${LANG_ENGLISH} "EULAs\PC EULA_ENG.rtf"
LicenseLangString LicenseRTF ${LANG_FRENCH} "EULAs\PC EULA_FR.rtf"
LicenseLangString LicenseRTF ${LANG_GERMAN} "EULAs\PC EULA_GER.rtf"
LicenseLangString LicenseRTF ${LANG_SPANISH} "EULAs\PC EULA_SPA.rtf"
LicenseLangString LicenseRTF ${LANG_ITALIAN} "EULAs\PC EULA_ITA.rtf"

!insertmacro MUI_PAGE_LICENSE LicenseRTF

BIG THANKS to anyone who can tell me what I'm doing wrong or better yet supply an example of how it should be done...

:confused:


$(LicenseRTF) just like any other LangString.

!insertmacro MUI_PAGE_LICENSE $(LicenseRTF)


The macro parameter is wrong. Use $(LicenseRTF) instead of LicenceRTF


Doh!

Thanks


Same problem
I have quite the same problem as Wlats therefore I post here.

The attachment is just a minimal script and 2 license files to reproduce my problem.

When I compile,I've got warnings that should be the problems:
LicenseLangString "LicenseRTF" set multiple times for 0, wasting space (C:\cimos\CimosMlts\installer\test.nsi:10)
Page instfiles not used, no sections will be executed!
LangString "LicenseRTF" is not set in language table of language 1036

It seems that LANG_ENGLISH and LANG_FRENCH are both defined to 0. What am I doing wrong?


${LANG_FRENCH} and ${LANG_ENGLISH} are not defined until the language files are included. The language files are included in the MUI_LANGUAGE macro. You should define the LangStrings after you include the language file.


thank you very much, I move the LicenseLangString block after the MUI_LANGUGE block and it is working perfectly.

:)


Hello, I'm new to NSIS, and I have a question...

If I have 5 languages but I want to have just 2 types of licenses, how can I code this?

Should I include 5 files, 4 identical or I can code to use the 1st type of license and then the 2nd type?

Thanks,

powergen


Just use the same file for some languages.


@powergen:
e.g.

LicenseLangString LicenseRTF ${LANG_ENGLISH} "eula_1.rtf" 
LicenseLangString LicenseRTF ${LANG_FRENCH} "eula_1.rtf"
LicenseLangString LicenseRTF ${LANG_GERMAN} "eula_2.rtf"
LicenseLangString LicenseRTF ${LANG_SPANISH} "eula_1.rtf"
LicenseLangString LicenseRTF ${LANG_ITALIAN} "eula_1.rtf"

!insertmacro MUI_PAGE_LICENSE $(LicenseRTF)

Yes, thanks.

I just wonder whether the same files is inserted in the package more than once.

:confused:


No, it will be inserted once into the string table.


Cool, thanks.

:)