Skip to content
⌘ NSIS Forum Archive

Multilanguage button-label-text Messagebox

4 posts

okrim#

Multilanguage button-label-text Messagebox

Hi,

is it possible to change the botton-label-text (MB_YESNO or MB_OKCANCEL) in message-boxes? All the other button in the other pages have the correct languages. I show after the language-dialog some message-boxes. The text in the message-box has the correct language, but the label of the buttons have the default-os-language. Is the language english, the cancel-button-label is still "abbrechen".

The second issue: Can I refresh the language-dialog with the text, after choosen a new language?

How can I set the default language, the order from !insertmacro MUI_LANGUAGE "b" and !insertmacro MUI_LANGUAGE "a" or the order of the push's won't work.


thanks in advance
okrim
okrim#
The operating system language is german.

The last point of my question-pack 😉 is solved, but the first problems are unsolved.

The order from insertmacro is ignored until the os-language is removed.


For exmaple i build an installer with Portuguese/Polish. The following Code create an installer with Polish as default, although Portuguese inserted at first. When I delete the German-Row, then is Portuguese the default.

The installer-script is generated (with an extern tool) an have many language-combinations.

I have a string-list with current languages:
!DEFINE LANGUAGE_LIST "(Portuguese)(Polish)" 
then I inserted all possible languages:
      !insertmacro MUI_LANGUAGE "Portuguese"
      !insertmacro MUI_LANGUAGE "Polish"
      !insertmacro MUI_LANGUAGE "German"
      !insertmacro MUI_LANGUAGE "English"
      !insertmacro MUI_LANGUAGE "French"
      !insertmacro MUI_LANGUAGE "Italian"
      !insertmacro MUI_LANGUAGE "Spanish"
      !insertmacro MUI_LANGUAGE "Swedish"
      !insertmacro MUI_LANGUAGE "Finnish"
      !insertmacro MUI_LANGUAGE "Norwegian"
      !insertmacro MUI_LANGUAGE "Dutch"
      !insertmacro MUI_LANGUAGE "Danish" 
a function determine the languages from the list
  Push ""
     
  ${WordFind3X} ${LANGUAGE_LIST} "(" "French" ")" "+1" $R0
  StrCmp $R0 "French" 0 +3 
        Push ${LANG_FRENCH}
        Push "French"
  ...; all other languages
  Push A;
  LangDLL::LangDialog $(L_PAGE_CAPTION) $(L_PAGE_TEXT)