Skip to content
⌘ NSIS Forum Archive

NsisIo & Languages problem

3 posts

galevsky#

NsisIo & Languages problem

Hi all,

I am new to Nsis scripting and face some issues.
The problem I have is a bad compilation status:

Error: resolving install function "NsisIo" in function "mui.WelcomePre_24.5.9"
and could not see why this happens. I have just found that the issue is coming from the location where I load the languages file.

Indeed, if I
!insertmacro MUI_LANGUAGE "English" 
before the pages descriptions
!insertmacro MUI_PAGE_XXX 
the problem happens. On the contrary, no pb if I load them after the pages descriptions.

Why can't we load and define language specific texts before the pages description ? I have defined a languages.nsh containing both the loads of lang files and the translated messages, and try to !include it at the beginning. I don't want to make some !include *.nsh later in the main .nsi for
readability reasons. I think that I should define a macro in the file included at the beginning, but calling the macro after the pages description.

Anyone to confirm, or to propose another solution ?

Gal'
Afrow UK#
It is due to the way Modern UI works internally. You have to stick to the order that is defined in the Modern UI documentation for macro insertion.

Stu
galevsky#
Thanks for your reply 🙂

I decided to work this way:

- all my !include statements are on top of main script.
- all the stuff into the headers are encapsulated into !macro
- I put !insertmacro routines on the right location

This is the way I found to increase readability, other languages looking-like design, and provide shareable and easy-to-maintain sources.

Gal'