diff -r 000000000000 -r d5ce4c64ef88 Examples/ExperienceUI/InstallOptions.nsi --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Examples/ExperienceUI/InstallOptions.nsi Tue Oct 16 00:07:41 2007 -0400 @@ -0,0 +1,153 @@ +;ExperienceUI for NSIS +;Header Bitmap Example Script +;Written by Dan Fuhry + +;OK, I cheated, Joost wrote it :) + +;--------------------- +;Include ExperienceUI + + !include "XPUI.nsh" + +;-------------------------------- +;General + + ;Name and file + Name "ExperienceUI Test 1.1" + OutFile "InstallOptions.exe" + + ;Default installation folder + InstallDir "$PROGRAMFILES\ExperienceUI Test" + + ;Get installation folder from registry if available + InstallDirRegKey HKCU "Software\ExperienceUI Test" "" + +;-------------------------------- +;Interface Settings + + !define XPUI_ABORTWARNING + +;-------------------------------- +;Pages + + !insertmacro XPUI_PAGE_LICENSE "${NSISDIR}\Docs\ExperienceUI\Index.htm" + Page custom CustomPageA + !insertmacro XPUI_PAGE_COMPONENTS + Page custom CustomPageB + !insertmacro XPUI_PAGE_DIRECTORY + Page custom CustomPageC + !insertmacro XPUI_PAGE_INSTFILES + + !insertmacro XPUI_PAGEMODE_UNINST + !insertmacro XPUI_PAGE_UNINSTCONFIRM_NSIS + !insertmacro XPUI_PAGE_INSTFILES + +;-------------------------------- +;Languages + + !insertmacro XPUI_LANGUAGE "English" + +;-------------------------------- +;Reserve Files + + ;These files should be inserted before other files in the data block + ;Keep these lines before any File command + ;Only for solid compression (by default, solid compression is enabled for BZIP2 and LZMA) + + ReserveFile "ioA.ini" + ReserveFile "ioB.ini" + ReserveFile "ioC.ini" + !insertmacro XPUI_RESERVEFILE_INSTALLOPTIONS + +;-------------------------------- +;Variables + + Var INI_VALUE + +;-------------------------------- +;Installer Sections + +Section "Dummy Section" SecDummy + + SetOutPath "$INSTDIR" + + ;ADD YOUR OWN FILES HERE... + + ;Store installation folder + WriteRegStr HKCU "Software\ExperienceUI Test" "" $INSTDIR + + ;Create uninstaller + WriteUninstaller "$INSTDIR\Uninstall.exe" + + ;Read a value from an InstallOptions INI file + !insertmacro XPUI_INSTALLOPTIONS_READ $INI_VALUE "ioC.ini" "Field 2" "State" + + ;Display a messagebox if check box was checked + StrCmp $INI_VALUE "1" "" +2 + MessageBox MB_OK "You checked the check box, here is the MessageBox..." + +SectionEnd + +;-------------------------------- +;Installer Functions + +!insertmacro XPUI_PAGEMODE_INST + +Function .onInit + + ;Extract InstallOptions INI files + !insertmacro XPUI_INSTALLOPTIONS_EXTRACT "ioA.ini" + !insertmacro XPUI_INSTALLOPTIONS_EXTRACT "ioB.ini" + !insertmacro XPUI_INSTALLOPTIONS_EXTRACT "ioC.ini" + +FunctionEnd + +LangString TEXT_IO_TITLE ${LANG_ENGLISH} "InstallOptions page" +LangString TEXT_IO_SUBTITLE ${LANG_ENGLISH} "This is a page created using the InstallOptions plug-in." + +Function CustomPageA + + !insertmacro XPUI_HEADER_TEXT "$(TEXT_IO_TITLE)" "$(TEXT_IO_SUBTITLE)" + !insertmacro XPUI_INSTALLOPTIONS_DISPLAY "ioA.ini" + +FunctionEnd + +Function CustomPageB + + !insertmacro XPUI_HEADER_TEXT "$(TEXT_IO_TITLE)" "$(TEXT_IO_SUBTITLE)" + !insertmacro XPUI_INSTALLOPTIONS_DISPLAY "ioB.ini" + +FunctionEnd + +Function CustomPageC + + !insertmacro XPUI_HEADER_TEXT "$(TEXT_IO_TITLE)" "$(TEXT_IO_SUBTITLE)" + !insertmacro XPUI_INSTALLOPTIONS_DISPLAY "ioC.ini" + +FunctionEnd + +;-------------------------------- +;Descriptions + + ;Language strings + LangString DESC_SecDummy ${LANG_ENGLISH} "A test section." + + ;Assign language strings to sections + !insertmacro XPUI_FUNCTION_DESCRIPTION_BEGIN + !insertmacro XPUI_DESCRIPTION_TEXT ${SecDummy} $(DESC_SecDummy) + !insertmacro XPUI_FUNCTION_DESCRIPTION_END + +;-------------------------------- +;Uninstaller Section + +Section "Uninstall" + + ;ADD YOUR OWN FILES HERE... + + Delete "$INSTDIR\Uninstall.exe" + + RMDir "$INSTDIR" + + DeleteRegKey /ifempty HKCU "Software\ExperienceUI Test" + +SectionEnd \ No newline at end of file