- NSIS Discussion
- learning nsis
Archive: learning nsis
nsisnovice
7th August 2006 22:55 UTC
learning nsis
I'm brand new to nsis. I'm looking at a script with
!define MUI_COMPONENTSPAGE
!define MUI_DIRECTORYPAGE
!define MUI_FINISHPAGE
!define MUI_FINISHPAGE_NOREBOOTSUPPORT
!insertmacro MUI_PAGECOMMAND_COMPONENTS
!insertmacro MUI_PAGECOMMAND_DIRECTORY
!insertmacro MUI_PAGECOMMAND_INSTFILES
I would like to learning what MUI_FINISHPAGE_NOREBOOTSUPPORT is or MUI_PAGECOMMAND_INSTFILES is and what they do as well as any other mui_XXX_YYY . I can't find descriptions of these in the NSIS documentation. Can someone point me in the direction of something that gives explanations of this stuff and/or a good nsis tutorial, etc. Thanks in advance!
galil
7th August 2006 23:01 UTC
1) Click Start > Programs > NSIS > Contrib > Modern UI Readme.
2) When html is loaded, click on "Expand All"
3) Press CTRL+F, type "MUI_FINISHPAGE_NOREBOOTSUPPORT", press ENTER.
4) Read.
How hard can it be...
nsisnovice
8th August 2006 21:07 UTC
Thanks for you help not for your insult...common sense would be for info like this to be under...."Click Start > Programs > NSIS > NSIS Documentation".
Afrow UK
8th August 2006 21:30 UTC
You'll find that it is there; under Appendix A: Modern User Interface.
-Stu
nsisnovice
8th August 2006 21:38 UTC
Thanks for your kind response. Previously, I did search the documentation under "Search", "Type in the words you are looking for" and nothing came up at all.
That page doesn't have anything on mui_pagecommand_xxxxxx. It also doesn't answer what is mui_directorypage or mui_finishpage are by themselves. Any other place to go look for a comprehensive listing and explanation of these features.
Afrow UK
8th August 2006 21:46 UTC
It's all under the Modern UI readme.
-Stu
galil
8th August 2006 22:32 UTC
And if you can't find something, such as "mui_pagecommand_x" macros, that means there's no such thing in the latest version of MUI (now they're named "MUI_PAGE_X", for quite some time already).
nsisnovice
8th August 2006 22:39 UTC
Thanks. Do you know why a script would have mui_directorypage or mui_finishpage by themselves. The documentation refers to mui_directorypage_xxxxx and mui_finishpage_xxxx . Is there any purpose or is this just waste.
galil
8th August 2006 22:45 UTC
In older versions of MUI (around year 2003, IIRC) syntax to set up pages in the script was like this:
!define MUI_DIRECTORYPAGE
!define MUI_FINISHPAGE
...
!insertmacro MUI_PAGECOMMAND_DIRECTORY
!insertmacro MUI_PAGECOMMAND_FINISH
Nowadays it's just:
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_FINISH
etc.
So if you are learning from old examples, expect some minor differences.
nsisnovice
8th August 2006 22:54 UTC
Wow! Thanks. That is exactly the case. This project is from 2002. I have been asked to add to it. If need be is it possible to get nsis from 2002.
Afrow UK
8th August 2006 23:04 UTC
I would not recommend using older versions of NSIS. Many bugs have been fixed since then.
You should be able to update the scripts quite easily. See Examples\Modern UI. The syntax is much simpler now.
-Stu
galil
8th August 2006 23:05 UTC
Originally posted by nsisnovice
If need be is it possible to get nsis from 2002.
You can find all old releases on NSIS download page (
http://nsis.sourceforge.net/Download ) under *cough* "Old releases".
Although using the latest version is recommended. For example back then there was no LZMA compression support. Which alone, IMHO, is worth some trouble.
I think it shouldn't be too hard to fix these old things into new, there's not that much of them. The pages naming issue described above, maybe some language related macros/defines, etc...
nsisnovice
8th August 2006 23:34 UTC
*cough* Congratulations!