Revision: 3476 http://geany.svn.sourceforge.net/geany/?rev=3476&view=rev Author: eht16 Date: 2009-01-17 13:10:26 +0000 (Sat, 17 Jan 2009)
Log Message: ----------- Re-indent the whole file using Tabs for indentation.
Modified Paths: -------------- trunk/geany.nsi
Modified: trunk/geany.nsi =================================================================== --- trunk/geany.nsi 2009-01-17 13:10:13 UTC (rev 3475) +++ trunk/geany.nsi 2009-01-17 13:10:26 UTC (rev 3476) @@ -117,196 +117,196 @@ InstType "Minimal"
Section "!Program Files" SEC01 - SectionIn RO 1 2 - SetOverwrite ifnewer + SectionIn RO 1 2 + SetOverwrite ifnewer
- SetOutPath "$INSTDIR" - File "${RESOURCEDIR}*.txt" + SetOutPath "$INSTDIR" + File "${RESOURCEDIR}*.txt"
- SetOutPath "$INSTDIR\bin" - File "${RESOURCEDIR}\bin\Geany.exe" + SetOutPath "$INSTDIR\bin" + File "${RESOURCEDIR}\bin\Geany.exe"
- SetOutPath "$INSTDIR\data" - File "${RESOURCEDIR}\data\GPL-2" - File "${RESOURCEDIR}\data\file*" - File "${RESOURCEDIR}\data\snippets.conf" - File "${RESOURCEDIR}\data\ui_toolbar.xml" + SetOutPath "$INSTDIR\data" + File "${RESOURCEDIR}\data\GPL-2" + File "${RESOURCEDIR}\data\file*" + File "${RESOURCEDIR}\data\snippets.conf" + File "${RESOURCEDIR}\data\ui_toolbar.xml"
- SetOutPath "$INSTDIR\share\icons" - File /r "${RESOURCEDIR}\share\icons*" + SetOutPath "$INSTDIR\share\icons" + File /r "${RESOURCEDIR}\share\icons*"
- SetOutPath "$INSTDIR" + SetOutPath "$INSTDIR"
- CreateShortCut "$INSTDIR\Geany.lnk" "$INSTDIR\bin\Geany.exe" - !insertmacro MUI_STARTMENU_WRITE_BEGIN ${PRODUCT_NAME} - CreateDirectory "$SMPROGRAMS$StartmenuFolder" - CreateShortCut "$SMPROGRAMS$StartmenuFolder\Geany.lnk" "$INSTDIR\bin\Geany.exe" - !insertmacro MUI_STARTMENU_WRITE_END + CreateShortCut "$INSTDIR\Geany.lnk" "$INSTDIR\bin\Geany.exe" + !insertmacro MUI_STARTMENU_WRITE_BEGIN ${PRODUCT_NAME} + CreateDirectory "$SMPROGRAMS$StartmenuFolder" + CreateShortCut "$SMPROGRAMS$StartmenuFolder\Geany.lnk" "$INSTDIR\bin\Geany.exe" + !insertmacro MUI_STARTMENU_WRITE_END
- ; register the extension .geany - ; write information about file type - WriteRegStr SHCTX "Software\Classes${PRODUCT_REGNAME}" "" "${PRODUCT_NAME} Project File" - WriteRegStr SHCTX "Software\Classes${PRODUCT_REGNAME}\DefaultIcon" "" "${PRODUCT_EXE},0" - WriteRegStr SHCTX "Software\Classes${PRODUCT_REGNAME}\Shell\open\command" "" '"${PRODUCT_EXE}" "%1"' - ; write information about file extensions - WriteRegStr SHCTX "Software\Classes${PRODUCT_EXT}" "" "${PRODUCT_REGNAME}" - ; refresh shell - System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) (0x08000000, 0, 0, 0)' + ; register the extension .geany + ; write information about file type + WriteRegStr SHCTX "Software\Classes${PRODUCT_REGNAME}" "" "${PRODUCT_NAME} Project File" + WriteRegStr SHCTX "Software\Classes${PRODUCT_REGNAME}\DefaultIcon" "" "${PRODUCT_EXE},0" + WriteRegStr SHCTX "Software\Classes${PRODUCT_REGNAME}\Shell\open\command" "" '"${PRODUCT_EXE}" "%1"' + ; write information about file extensions + WriteRegStr SHCTX "Software\Classes${PRODUCT_EXT}" "" "${PRODUCT_REGNAME}" + ; refresh shell + System::Call 'shell32.dll::SHChangeNotify(i, i, i, i) (0x08000000, 0, 0, 0)' SectionEnd
Section "Plugins" SEC02 - SectionIn 1 - SetOverwrite ifnewer - SetOutPath "$INSTDIR\lib" - File "${RESOURCEDIR}\lib*.dll" + SectionIn 1 + SetOverwrite ifnewer + SetOutPath "$INSTDIR\lib" + File "${RESOURCEDIR}\lib*.dll" SectionEnd
Section "Language Files" SEC03 - SectionIn 1 - SetOutPath "$INSTDIR\share\locale" - File /r "${RESOURCEDIR}\share\locale*" + SectionIn 1 + SetOutPath "$INSTDIR\share\locale" + File /r "${RESOURCEDIR}\share\locale*" !ifdef INCLUDE_GTK - SetOutPath "$INSTDIR\share" - File /r "gtk\share*" + SetOutPath "$INSTDIR\share" + File /r "gtk\share*" !endif SectionEnd
Section "Documentation" SEC04 - SectionIn 1 - SetOverwrite ifnewer - SetOutPath "$INSTDIR" - File /r "${RESOURCEDIR}\doc" - WriteIniStr "$INSTDIR\Documentation.url" "InternetShortcut" "URL" "$INSTDIR\doc\Manual.html" - !insertmacro MUI_STARTMENU_WRITE_BEGIN ${PRODUCT_NAME} - CreateShortCut "$SMPROGRAMS$StartmenuFolder\Documentation.lnk" "$INSTDIR\Documentation.url" - !insertmacro MUI_STARTMENU_WRITE_END + SectionIn 1 + SetOverwrite ifnewer + SetOutPath "$INSTDIR" + File /r "${RESOURCEDIR}\doc" + WriteIniStr "$INSTDIR\Documentation.url" "InternetShortcut" "URL" "$INSTDIR\doc\Manual.html" + !insertmacro MUI_STARTMENU_WRITE_BEGIN ${PRODUCT_NAME} + CreateShortCut "$SMPROGRAMS$StartmenuFolder\Documentation.lnk" "$INSTDIR\Documentation.url" + !insertmacro MUI_STARTMENU_WRITE_END SectionEnd
Section "Autocompletion Tags" SEC05 - SectionIn 1 - SetOutPath "$INSTDIR\data" - SetOverwrite ifnewer - File "${RESOURCEDIR}\data\php.tags" - File "${RESOURCEDIR}\data\pascal.tags" - File "${RESOURCEDIR}\data\latex.tags" - File "${RESOURCEDIR}\data\python.tags" - File "${RESOURCEDIR}\data\html_entities.tags" - File "${RESOURCEDIR}\data\global.tags" + SectionIn 1 + SetOutPath "$INSTDIR\data" + SetOverwrite ifnewer + File "${RESOURCEDIR}\data\php.tags" + File "${RESOURCEDIR}\data\pascal.tags" + File "${RESOURCEDIR}\data\latex.tags" + File "${RESOURCEDIR}\data\python.tags" + File "${RESOURCEDIR}\data\html_entities.tags" + File "${RESOURCEDIR}\data\global.tags" SectionEnd
; Include GTK runtime library but only if desired from command line !ifdef INCLUDE_GTK Section "GTK 2.14 Runtime Environment" SEC06 - SectionIn 1 - SetOverwrite ifnewer - SetOutPath "$INSTDIR\bin" - File /r "gtk\bin*" - SetOutPath "$INSTDIR\etc" - File /r "gtk\etc*" - SetOutPath "$INSTDIR\lib" - File /r "gtk\lib*" + SectionIn 1 + SetOverwrite ifnewer + SetOutPath "$INSTDIR\bin" + File /r "gtk\bin*" + SetOutPath "$INSTDIR\etc" + File /r "gtk\etc*" + SetOutPath "$INSTDIR\lib" + File /r "gtk\lib*" SectionEnd !endif
Section "Context Menus" SEC07 - SectionIn 1 - WriteRegStr HKCR "*\shell\OpenWithGeany" "" "Open with Geany" - WriteRegStr HKCR "*\shell\OpenWithGeany\command" "" '$INSTDIR\bin\geany.exe "%1"' + SectionIn 1 + WriteRegStr HKCR "*\shell\OpenWithGeany" "" "Open with Geany" + WriteRegStr HKCR "*\shell\OpenWithGeany\command" "" '$INSTDIR\bin\geany.exe "%1"' SectionEnd
Section "Desktop Shortcuts" SEC08 - SectionIn 1 - CreateShortCut "$DESKTOP\Geany.lnk" "$INSTDIR\bin\Geany.exe" - CreateShortCut "$QUICKLAUNCH\Geany.lnk" "$INSTDIR\bin\Geany.exe" + SectionIn 1 + CreateShortCut "$DESKTOP\Geany.lnk" "$INSTDIR\bin\Geany.exe" + CreateShortCut "$QUICKLAUNCH\Geany.lnk" "$INSTDIR\bin\Geany.exe" SectionEnd
Section -AdditionalIcons - SetOutPath $INSTDIR - !insertmacro MUI_STARTMENU_WRITE_BEGIN ${PRODUCT_NAME} - WriteIniStr "$INSTDIR\Website.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" - CreateShortCut "$SMPROGRAMS$StartmenuFolder\Website.lnk" "$INSTDIR\Website.url" - CreateShortCut "$SMPROGRAMS$StartmenuFolder\Uninstall.lnk" "$INSTDIR\uninst.exe" - !insertmacro MUI_STARTMENU_WRITE_END + SetOutPath $INSTDIR + !insertmacro MUI_STARTMENU_WRITE_BEGIN ${PRODUCT_NAME} + WriteIniStr "$INSTDIR\Website.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" + CreateShortCut "$SMPROGRAMS$StartmenuFolder\Website.lnk" "$INSTDIR\Website.url" + CreateShortCut "$SMPROGRAMS$StartmenuFolder\Uninstall.lnk" "$INSTDIR\uninst.exe" + !insertmacro MUI_STARTMENU_WRITE_END SectionEnd
Section -Post - WriteUninstaller "$INSTDIR\uninst.exe" - WriteRegStr SHCTX "${PRODUCT_DIR_REGKEY}" Path "$INSTDIR" - WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "StartMenu" "$SMPROGRAMS$StartmenuFolder" - ${if} $Answer == "yes" ; if user is admin - WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" - WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" - WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\bin\Geany.exe" - WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" - WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" - WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "URLUpdateInfo" "${PRODUCT_WEB_SITE}" - WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" - WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoModify" 0x00000001 - WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoRepair" 0x00000001 - ${endif} + WriteUninstaller "$INSTDIR\uninst.exe" + WriteRegStr SHCTX "${PRODUCT_DIR_REGKEY}" Path "$INSTDIR" + WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "StartMenu" "$SMPROGRAMS$StartmenuFolder" + ${if} $Answer == "yes" ; if user is admin + WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" + WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\uninst.exe" + WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\bin\Geany.exe" + WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" + WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "${PRODUCT_WEB_SITE}" + WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "URLUpdateInfo" "${PRODUCT_WEB_SITE}" + WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "Publisher" "${PRODUCT_PUBLISHER}" + WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoModify" 0x00000001 + WriteRegDWORD SHCTX "${PRODUCT_UNINST_KEY}" "NoRepair" 0x00000001 + ${endif} SectionEnd
Section Uninstall - Delete "$INSTDIR\Website.url" - Delete "$INSTDIR\Documentation.url" - Delete "$INSTDIR\uninst.exe" - Delete "$INSTDIR\News.txt" - Delete "$INSTDIR\ReadMe.txt" - Delete "$INSTDIR\Thanks.txt" - Delete "$INSTDIR\ToDo.txt" - Delete "$INSTDIR\Authors.txt" - Delete "$INSTDIR\ChangeLog.txt" - Delete "$INSTDIR\Copying.txt" - Delete "$INSTDIR\Geany.lnk" + Delete "$INSTDIR\Website.url" + Delete "$INSTDIR\Documentation.url" + Delete "$INSTDIR\uninst.exe" + Delete "$INSTDIR\News.txt" + Delete "$INSTDIR\ReadMe.txt" + Delete "$INSTDIR\Thanks.txt" + Delete "$INSTDIR\ToDo.txt" + Delete "$INSTDIR\Authors.txt" + Delete "$INSTDIR\ChangeLog.txt" + Delete "$INSTDIR\Copying.txt" + Delete "$INSTDIR\Geany.lnk"
- ; delete start menu entry - ReadRegStr $0 SHCTX "${PRODUCT_UNINST_KEY}" "StartMenu" - RMDir /r "$0" + ; delete start menu entry + ReadRegStr $0 SHCTX "${PRODUCT_UNINST_KEY}" "StartMenu" + RMDir /r "$0"
- Delete "$QUICKLAUNCH\Geany.lnk" - Delete "$DESKTOP\Geany.lnk" + Delete "$QUICKLAUNCH\Geany.lnk" + Delete "$DESKTOP\Geany.lnk"
- RMDir /r "$INSTDIR\bin" - RMDir /r "$INSTDIR\doc" - RMDir /r "$INSTDIR\data" - RMDir /r "$INSTDIR\etc" - RMDir /r "$INSTDIR\lib" - RMDir /r "$INSTDIR\share" - RMDir "$INSTDIR" + RMDir /r "$INSTDIR\bin" + RMDir /r "$INSTDIR\doc" + RMDir /r "$INSTDIR\data" + RMDir /r "$INSTDIR\etc" + RMDir /r "$INSTDIR\lib" + RMDir /r "$INSTDIR\share" + RMDir "$INSTDIR"
- ; remove .geany file extension - ReadRegStr $R0 SHCTX "Software\Classes${PRODUCT_EXT}" "" - ${if} $R0 == "${PRODUCT_REGNAME}" - DeleteRegKey SHCTX "${PRODUCT_EXT}" - DeleteRegKey HKCR "${PRODUCT_EXT}" - DeleteRegKey SHCTX "${PRODUCT_REGNAME}" - DeleteRegKey HKCR "${PRODUCT_REGNAME}" - ${endif} + ; remove .geany file extension + ReadRegStr $R0 SHCTX "Software\Classes${PRODUCT_EXT}" "" + ${if} $R0 == "${PRODUCT_REGNAME}" + DeleteRegKey SHCTX "${PRODUCT_EXT}" + DeleteRegKey HKCR "${PRODUCT_EXT}" + DeleteRegKey SHCTX "${PRODUCT_REGNAME}" + DeleteRegKey HKCR "${PRODUCT_REGNAME}" + ${endif}
- DeleteRegKey HKCR "*\shell\OpenWithGeany" + DeleteRegKey HKCR "*\shell\OpenWithGeany"
- DeleteRegKey SHCTX "${PRODUCT_UNINST_KEY}" - DeleteRegKey HKCU "${PRODUCT_UNINST_KEY}" - DeleteRegKey SHCTX "${PRODUCT_DIR_REGKEY}" - DeleteRegKey HKCU "${PRODUCT_DIR_REGKEY}" + DeleteRegKey SHCTX "${PRODUCT_UNINST_KEY}" + DeleteRegKey HKCU "${PRODUCT_UNINST_KEY}" + DeleteRegKey SHCTX "${PRODUCT_DIR_REGKEY}" + DeleteRegKey HKCU "${PRODUCT_DIR_REGKEY}"
- SetAutoClose true + SetAutoClose true SectionEnd
;;;;;;;;;;;;;;;;;;;;;;;;; ; Section descriptions ; ;;;;;;;;;;;;;;;;;;;;;;;;; !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN - !insertmacro MUI_DESCRIPTION_TEXT ${SEC01} "Required program files. You cannot skip these files." - !insertmacro MUI_DESCRIPTION_TEXT ${SEC02} "Available plugins like 'Version Diff', 'Class Builder' and 'Insert Special Characters'." - !insertmacro MUI_DESCRIPTION_TEXT ${SEC03} "Various translations of Geany's interface." - !insertmacro MUI_DESCRIPTION_TEXT ${SEC04} "Manual in Text and HTML format." - !insertmacro MUI_DESCRIPTION_TEXT ${SEC05} "Symbol lists necessary for auto completion of symbols." +!insertmacro MUI_DESCRIPTION_TEXT ${SEC01} "Required program files. You cannot skip these files." +!insertmacro MUI_DESCRIPTION_TEXT ${SEC02} "Available plugins like 'Version Diff', 'Class Builder' and 'Insert Special Characters'." +!insertmacro MUI_DESCRIPTION_TEXT ${SEC03} "Various translations of Geany's interface." +!insertmacro MUI_DESCRIPTION_TEXT ${SEC04} "Manual in Text and HTML format." +!insertmacro MUI_DESCRIPTION_TEXT ${SEC05} "Symbol lists necessary for auto completion of symbols." !ifdef INCLUDE_GTK - !insertmacro MUI_DESCRIPTION_TEXT ${SEC06} "You need this files to run Geany. If you have already installed a GTK Runtime Environment (2.6 or higher), you can skip it." +!insertmacro MUI_DESCRIPTION_TEXT ${SEC06} "You need this files to run Geany. If you have already installed a GTK Runtime Environment (2.6 or higher), you can skip it." !endif - !insertmacro MUI_DESCRIPTION_TEXT ${SEC07} "Add context menu item 'Open With Geany'" - !insertmacro MUI_DESCRIPTION_TEXT ${SEC08} "Create shortcuts for Geany on the desktop and in the Quicklaunch Bar" +!insertmacro MUI_DESCRIPTION_TEXT ${SEC07} "Add context menu item 'Open With Geany'" +!insertmacro MUI_DESCRIPTION_TEXT ${SEC08} "Create shortcuts for Geany on the desktop and in the Quicklaunch Bar" !insertmacro MUI_FUNCTION_DESCRIPTION_END
;;;;;;;;;;;;;;;;;;;;; @@ -315,110 +315,111 @@
; (from http://jabref.svn.sourceforge.net/viewvc/jabref/trunk/jabref/src/windows/nsi...) !macro IsUserAdmin Result UName + ClearErrors + UserInfo::GetName + IfErrors Win9x + Pop $0 + StrCpy ${UName} $0 + UserInfo::GetAccountType + Pop $1 + ${if} $1 == "Admin" + StrCpy ${Result} "yes" + ${else} + StrCpy ${Result} "no" + ${endif} + Goto done
- ClearErrors - UserInfo::GetName - IfErrors Win9x - Pop $0 - StrCpy ${UName} $0 - UserInfo::GetAccountType - Pop $1 - ${if} $1 == "Admin" - StrCpy ${Result} "yes" - ${else} - StrCpy ${Result} "no" - ${endif} - Goto done - - Win9x: - StrCpy ${Result} "yes" - done: +Win9x: + StrCpy ${Result} "yes" +done: !macroend
Function .onInit - StrCpy "$StartmenuFolder" "Geany" + StrCpy "$StartmenuFolder" "Geany"
- ; (from http://jabref.svn.sourceforge.net/viewvc/jabref/trunk/jabref/src/windows/nsi...) - ; If the user does *not* have administrator privileges, abort - StrCpy $Answer "" - StrCpy $UserName "" - !insertmacro IsUserAdmin $Answer $UserName ; macro from LyXUtils.nsh - ${if} $Answer == "yes" - SetShellVarContext all ; set that e.g. shortcuts will be created for all users - ${else} - SetShellVarContext current - ; TODO is this really what we want? $PROGRAMFILES is not much better because - ; probably the unprivileged user can't write it anyways - StrCpy $INSTDIR "$PROFILE$(^Name)" - ${endif} + ; (from http://jabref.svn.sourceforge.net/viewvc/jabref/trunk/jabref/src/windows/nsi...) + ; If the user does *not* have administrator privileges, abort + StrCpy $Answer "" + StrCpy $UserName "" + !insertmacro IsUserAdmin $Answer $UserName ; macro from LyXUtils.nsh + ${if} $Answer == "yes" + SetShellVarContext all ; set that e.g. shortcuts will be created for all users + ${else} + SetShellVarContext current + ; TODO is this really what we want? $PROGRAMFILES is not much better because + ; probably the unprivileged user can't write it anyways + StrCpy $INSTDIR "$PROFILE$(^Name)" + ${endif}
- ; prevent running multiple instances of the installer - System::Call 'kernel32::CreateMutexA(i 0, i 0, t "geany_installer") i .r1 ?e' - Pop $R0 - StrCmp $R0 0 +3 - MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running." /SD IDOK - Abort - ; warn about a new install over an existing installation - ReadRegStr $R0 SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" - StrCmp $R0 "" finish + ; prevent running multiple instances of the installer + System::Call 'kernel32::CreateMutexA(i 0, i 0, t "geany_installer") i .r1 ?e' + Pop $R0 + StrCmp $R0 0 +3 + MessageBox MB_OK|MB_ICONEXCLAMATION "The installer is already running." /SD IDOK + Abort + ; warn about a new install over an existing installation + ReadRegStr $R0 SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" + StrCmp $R0 "" finish
- MessageBox MB_YESNO|MB_ICONEXCLAMATION \ - "Geany has already been installed. $\nDo you want to remove the previous version before installing $(^Name) ?" \ - /SD IDYES IDYES remove IDNO finish + MessageBox MB_YESNO|MB_ICONEXCLAMATION \ + "Geany has already been installed. $\nDo you want to remove the previous version before installing $(^Name) ?" \ + /SD IDYES IDYES remove IDNO finish
- remove: - ; run the uninstaller - ClearErrors - ; we read the installation path of the old installation from the Registry - ReadRegStr $UNINSTDIR SHCTX "${PRODUCT_DIR_REGKEY}" "Path" - IfSilent dosilent nonsilent - dosilent: +remove: + ; run the uninstaller + ClearErrors + ; we read the installation path of the old installation from the Registry + ReadRegStr $UNINSTDIR SHCTX "${PRODUCT_DIR_REGKEY}" "Path" + IfSilent dosilent nonsilent +dosilent: ExecWait '$R0 /S _?=$UNINSTDIR' ;Do not copy the uninstaller to a temp file - Goto finish - nonsilent: + Goto finish +nonsilent: ExecWait '$R0 _?=$UNINSTDIR' ;Do not copy the uninstaller to a temp file - - finish: +finish: FunctionEnd
Function un.onUninstSuccess - HideWindow - MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." /SD IDOK + HideWindow + MessageBox MB_ICONINFORMATION|MB_OK "$(^Name) was successfully removed from your computer." \ + /SD IDOK FunctionEnd
Function un.onInit - ; If the user does *not* have administrator privileges, abort - StrCpy $Answer "" - !insertmacro IsUserAdmin $Answer $UserName - ${if} $Answer == "yes" - SetShellVarContext all - ${else} - ; check if the Geany has been installed with admin permisions - ReadRegStr $0 HKLM "${PRODUCT_UNINST_KEY}" "Publisher" - ${if} $0 != "" - MessageBox MB_OK|MB_ICONSTOP "You need administrator privileges to uninstall Geany!" /SD IDOK - Abort - ${endif} - SetShellVarContext current - ${endif} + ; If the user does *not* have administrator privileges, abort + StrCpy $Answer "" + !insertmacro IsUserAdmin $Answer $UserName + ${if} $Answer == "yes" + SetShellVarContext all + ${else} + ; check if the Geany has been installed with admin permisions + ReadRegStr $0 HKLM "${PRODUCT_UNINST_KEY}" "Publisher" + ${if} $0 != "" + MessageBox MB_OK|MB_ICONSTOP "You need administrator privileges to uninstall Geany!" \ + /SD IDOK + Abort + ${endif} + SetShellVarContext current + ${endif}
- MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" /SD IDYES IDYES +2 - Abort + MessageBox MB_ICONQUESTION|MB_YESNO|MB_DEFBUTTON2 "Are you sure you want to completely remove $(^Name) and all of its components?" \ + /SD IDYES IDYES +2 + Abort FunctionEnd
Function OnDirLeave - ClearErrors - SetOutPath "$INSTDIR" ; what about IfError creating $INSTDIR? - GetTempFileName $1 "$INSTDIR" ; creates tmp file (or fails) - FileOpen $0 "$1" "w" ; error to open? - FileWriteByte $0 "0" - IfErrors notPossible possible + ClearErrors + SetOutPath "$INSTDIR" ; what about IfError creating $INSTDIR? + GetTempFileName $1 "$INSTDIR" ; creates tmp file (or fails) + FileOpen $0 "$1" "w" ; error to open? + FileWriteByte $0 "0" + IfErrors notPossible possible
notPossible: - RMDir "$INSTDIR" ; removes folder if empty - MessageBox MB_OK "The given directory is not writeable. Please choose another one!" /SD IDOK - Abort + RMDir "$INSTDIR" ; removes folder if empty + MessageBox MB_OK "The given directory is not writeable. Please choose another one!" /SD IDOK + Abort possible: - FileClose $0 - Delete "$1" + FileClose $0 + Delete "$1" FunctionEnd
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.