Skip to content
⌘ NSIS Forum Archive

Multi-language, multi license text files !?

13 posts

Wlats#

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...

😕
chris_svp#
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?
kichik#
${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.
chris_svp#
thank you very much, I move the LicenseLangString block after the MUI_LANGUGE block and it is working perfectly.

🙂
powergen#
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
Comm@nder21#
@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)
powergen#
Yes, thanks.

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

😕