I’m trying to create a post install configuration page in my nsis script using nsDialogs. My script for gathering the input and executing the configuration works however I’m never presented with a finish/close/exit button after I’m done. Currently my pages declaration looks like:
Page directory
Page instfiles
Page custom nsDialogsPage nsDialogsPageLeave
How can I get a finish/exit/done button to show after nsDialogsPageLeave executes?
The classic NSIS UI does not have a finish page, the instfiles page is usually the last page and it will show a “finish button” after all the sections have executed. You can set the text of any button to the same string with
SendMessage $hwndButton ${WM_SETTEXT} 0 "STR:$(^CloseBtn)"if you want to provide your own finish page.Most installers request the required information before the instfiles page, if you cannot do this then you might want to use the Modern UI, it will provide a finish page for you:
It was a little unclear to me if you wanted two pages; a input page and then a finish page or a combined input/finish page. A combined page is a little weird but it is possible: