Bansaw
19th April 2011 21:29 UTC
Adding a SKIP button in MUI_PAGE_INSTFILES ?
I can add a skip button on my custom pages like this:
nsDialogs::Create 1018
Pop $dialog
GetDlgItem $0 $HWNDPARENT 1 /* 1 = Next, 2 = Cancel, 3 = Back */
SendMessage $0 ${WM_SETTEXT} 0 "STR:SKIP >"
...
...
nsDialogs::Show
But it doesn't seem to work in the MUI_PAGE_INSTFILES.
At the moment, I have BACK, INSTALL and CANCEL. How do you add a SKIP in there?
Bansaw
19th April 2011 21:50 UTC
pants, I just found this:
Next, we'll add a custom page where we can use nsDialogs. nsDialogs cannot be used in sections or any other function but a custom page's function.
Any way I can still add a SKIP apart from using nsDialogs?
Afrow UK
19th April 2011 22:29 UTC
You're not using nsDialogs to set the text. GetDlgItem and SendMessage are NSIS instructions. You may be able to set the button text from a section but skipping install? That's not really possible. Why would you want to?
Stu
Bansaw
20th April 2011 02:23 UTC
Thanks. I would want to skip the install because my custom pages also install something different.
my mui_page_instfiles installs the bulk of the images and templates , while the following custom pages give the option to install 3rd party software and other stuff.
The user may want to launch the installer a second time in the future, and come to the instfiles page and think "hey, I already got the images and templates, I need to skip this"
MSG
20th April 2011 05:58 UTC
You should not skip installation in the middle of the installation process. Instead, you can either show a components page (which allows people to deselect specific sections), or you can add a custom page or messagebox, asking if it should be installed.
(Also, it sounds like you could just add a components page, and let the user select everything in one go: Create a section for Templates, another for 3rd party software, and another for Other Stuff. This way you don't need to add pages after INSTFILES.)