Hi! i am very new in NSIS and i need to have a two differents eula files for two differents languages, spanish and english. I have this:
LicenseLangString FileName ${LANG_SPANISH} "EULA_SPA.txt"
LicenseLangString FileName ${LANG_ENGLISH} "EULA_ENG.txt"
!insertmacro MUI_PAGE_LICENSE $(FileName)
When i execute this, it work, but there is not eula text in the installation, is empty and in NSIS i can see this:
2 warnings:
LicenseLangString "ArchivoLicencia" set multiple times for 1033, wasting space (C:\Users\jguinea\Desktop\Instalador AULA\Aula.nsi:75)
LangString "ArchivoLicencia" is not set in language table of language Spanish
How have i do this??? thanks!!! and sorry for my bad english!
very simple doubt with langstring
2 posts
The ${LANG_SPANISH} define is not valid until after !insertmacro MUI_LANGUAGE "Spanish" so just move the LicenseLangString instructions down in your .nsi:
!include MUI2.nsh
!define MUI_LANGDLL_ALWAYSSHOW
!insertmacro MUI_PAGE_LICENSE $(licensecontent)
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "Spanish"
!insertmacro MUI_LANGUAGE "English"
LicenseLangString licensecontent ${LANG_SPANISH} "${NSISDIR}\COPYING"
LicenseLangString licensecontent ${LANG_ENGLISH} "${NSISDIR}\nsisconf.nsh"
Function .onInit
!insertmacro MUI_LANGDLL_DISPLAY
FunctionEnd
Section
SectionEnd I changed the way NSIS 3 parses this parameter so the next release will issue a warning when you get the order wrong.