Comment puis-je modifier le texte dans le MUI_WELCOME_PAGE lors de l'utilisation MUI2 pour NSIS?

StackOverflow https://stackoverflow.com/questions/5318974

  •  24-10-2019
  •  | 
  •  

Question

Je veux ajouter une étiquette affichant la pleine chaîne de version dans l'écran d'accueil du programme d'installation Je crée en utilisant NSIS avec MUI2.

J'ai cherché informations sur la façon de le faire, mais seulement trouvé des références à l'utilisation MUI_INSTALLOPTIONS * que j'ai trouvé ws déconseillés pour MUI2. Un autre fait référence aux versions les plus récentes en utilisant InstallOptions * avec les mêmes options, mais je ne pouvais pas le faire fonctionner. J'ai finalement aussi trouvé une référence à l'utilisation nsDialogs pour cela - qui est ce que je me sers pour mes pages personnalisées. Cependant -. J'ai trouvé aucune référence ou des échantillons sur la façon de modifier les pages existantes qui vient avec MUI2.nsh

J'ai trouvé un moyen de changer le MUI_HEADERTEXT, mais cela ne modifie pas l'écran d'accueil. Je souhaite qu'il y ait un moyen de changer aussi le welcometext. Peut-être en utilisant MUI_WELCOMETITLE et MUI_WELCOMEBODY ou similaire.

Était-ce utile?

La solution

Il y a MUI_WELCOMEPAGE_TEXT mais il est utile que si vous voulez changer tout le texte et non quelque chose juste ajouter.

Au cours de la fonction show de la page, vous pouvez modifier le texte de tout contrôle:

outfile test.exe
requestexecutionlevel user

!include MUI2.nsh

#!define MUI_WELCOMEPAGE_TEXT "New text goes here"
!define MUI_PAGE_CUSTOMFUNCTION_SHOW MyWelcomeShowCallback
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"


Function MyWelcomeShowCallback
SendMessage $mui.WelcomePage.Text ${WM_SETTEXT} 0 "STR:$(MUI_TEXT_WELCOME_INFO_TEXT)$\n$\nVersion: foo.bar"
FunctionEnd

Section
SectionEnd

.. ou ajouter un nouveau contrôle:

outfile test.exe
requestexecutionlevel user

!include MUI2.nsh

!define MUI_PAGE_CUSTOMFUNCTION_SHOW MyWelcomeShowCallback
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"


Function MyWelcomeShowCallback
${NSD_CreateLabel} 120u 150u 50% 12u "Version: foo.bar"
Pop $0
SetCtlColors $0 "" "${MUI_BGCOLOR}"
FunctionEnd

Section
SectionEnd
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top