Archive: multilanguage installer with uninstaller


multilanguage installer with uninstaller
  Hello friends,

i try to build an multi-language installer (based on the example "languages.nsi") with NSIS 2.0a7:

My installer is multi language, but the uninstaller is not multi language....


Is is not possible to create a multi language uninstaller?


Fiffi


Hi everybody,

I have the similar problem - when I compiled
C:\Program Files\NSIS\Examples\Modern UI\MultiLanguage.nsi
from 'nsis-snapshot-sep22.exe' and installed with DUTCH as choosen language then the uninstaller was in ENGLISH :(

IMHO Joost could help us to solve this problem :)

P.S. I'm using Windows 98 SE

Kypec ("NSIS 2 RUUUULES!")


The uninstaller in MultiLanguage.nsi just uses the closest match to the system's default language.

You can either use LangDLL (the language selection dialog) for the uninstaller or save the chosen language to the registry.

I think I will add that to the Modern UI example script.

You should also get a new snapshot with installer from http://nsis.sf.net/ it contains a lot of fixes and new features.


Hello Joost Verburg,

Thank you for the link to the snapshot...


Fiffi


Updated multilanguage.nsi available at CVS.


Hello Joost Verburg,

thank you very much for the updated file!


Fiffi


I was wondering... is there a way to change the installer sections according to the language?

Like:

Section "Test" Test
[...]
SectionEnd

I'd like "Test" to change for something else when the language is setted to a non-english one, is that possible?

Regards,
-L


Of course, use SectionSetText.

Example:


StrCmp $LANGUAGE ${LANG_DUTCH} "" +2
SectionSetText ${SecCreateUninst} "Deïnstallatie programma"

Sure. In .onInit, after you select the language, let it be the default or with LangDLL, use StrCmp $LANGAUGE ${LANG_???} to set the section name.

For example:

StrCmp $LANGUAGE${LANG_ENGLISH} 0 +2

SectionSetText${SEC1} "English name"
>StrCmp $LANGUAGE ${LANG_FRENCH} 0 +2
SectionSetText${SEC1} "French name"

Oops, sorry it was in the example script, didn't notice it at first.

Thank you guys.

-L