index 4a4dd2845a2a587c5601d208e2247209c2547e31..ebd80cbd51f087dd646062d283ccf6ea7f3733a7 100644 (file)
; DEFINES
; #######################################
!define PRODUCT_NAME "Inkscape"
; DEFINES
; #######################################
!define PRODUCT_NAME "Inkscape"
-!define PRODUCT_VERSION "0.44+devel"
+!define PRODUCT_VERSION "0.45+devel"
!define PRODUCT_PUBLISHER "Inkscape Organization"
!define PRODUCT_WEB_SITE "http://www.inkscape.org"
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\inkscape.exe"
!define PRODUCT_PUBLISHER "Inkscape Organization"
!define PRODUCT_WEB_SITE "http://www.inkscape.org"
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\inkscape.exe"
!define MUI_HEADERIMAGE_BITMAP "header.bmp"
!define MUI_COMPONENTSPAGE_SMALLDESC
!define MUI_HEADERIMAGE_BITMAP "header.bmp"
!define MUI_COMPONENTSPAGE_SMALLDESC
+;..................................................................................................
+;Following two definitions required. Uninstall log will use these definitions.
+;You may use these definitions also, when you want to set up the InstallDirRagKey,
+;store the language selection, store Start Menu folder etc.
+;Enter the windows uninstall reg sub key to add uninstall information to Add/Remove Programs also.
+
+!define INSTDIR_REG_ROOT "HKLM"
+!define INSTDIR_REG_KEY PRODUCT_UNINST_KEY
+
+;include the Uninstall log header
+!include AdvUninstLog.nsh
+
+;Specify the preferred uninstaller operation mode, either unattended or interactive.
+;You have to type either !insertmacro UNATTENDED_UNINSTALL, or !insertmacro INTERACTIVE_UNINSTALL.
+;Be aware only one of the following two macros has to be inserted, neither both, neither none.
+
+;!insertmacro UNATTENDED_UNINSTALL
+!insertmacro INTERACTIVE_UNINSTALL
+
; Welcome page
!insertmacro MUI_PAGE_WELCOME
; Welcome page
!insertmacro MUI_PAGE_WELCOME
; Language files
!include "english.nsh"
; Language files
!include "english.nsh"
-!include "catalan.nsh"
+; !include "catalan.nsh" the catalan support has been abandoned by NSIS as of version 2.28
!include "czech.nsh"
!include "finnish.nsh"
!include "french.nsh"
!include "german.nsh"
!include "italian.nsh"
!include "czech.nsh"
!include "finnish.nsh"
!include "french.nsh"
!include "german.nsh"
!include "italian.nsh"
-!include "slovak.nsh"
+!include "japanese.nsh"
!include "polish.nsh"
!include "polish.nsh"
-!include "spanish.nsh"
+!include "russian.nsh"
+!include "slovak.nsh"
!include "slovenian.nsh"
!include "slovenian.nsh"
+!include "spanish.nsh"
ReserveFile "inkscape.nsi.uninstall"
ReserveFile "inkscape.nsi.uninstall"
!macro Language polng lng
SectionIn 1 2 3
SetOutPath $INSTDIR
!macro Language polng lng
SectionIn 1 2 3
SetOutPath $INSTDIR
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a "..\..\inkscape\*.${lng}.txt"
File /nonfatal /a "..\..\inkscape\*.${lng}.txt"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\locale
SetOutPath $INSTDIR\locale
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r "..\..\inkscape\locale\${polng}"
File /nonfatal /a /r "..\..\inkscape\locale\${polng}"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\lib\locale
SetOutPath $INSTDIR\lib\locale
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r "..\..\inkscape\lib\locale\${polng}"
File /nonfatal /a /r "..\..\inkscape\lib\locale\${polng}"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
+ SetOutPath $INSTDIR\share\clipart
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r "..\..\inkscape\share\clipart\*.${polng}.svg"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
; the keyboard tables
SetOutPath $INSTDIR\share\screens
; the keyboard tables
SetOutPath $INSTDIR\share\screens
- File /nonfatal /a /r "..\..\inkscape\share\screens\keys.${polng}.svg"
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r "..\..\inkscape\share\screens\*.${polng}.svg"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\share\templates
SetOutPath $INSTDIR\share\templates
- File /nonfatal /a /r "..\..\inkscape\share\templates\default.${polng}.svg"
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r "..\..\inkscape\share\templates\*.${polng}.svg"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\doc
SetOutPath $INSTDIR\doc
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r "..\..\inkscape\doc\keys.${polng}.xml"
File /nonfatal /a /r "..\..\inkscape\doc\keys.${polng}.html"
File /nonfatal /a /r "..\..\inkscape\doc\keys.${polng}.xml"
File /nonfatal /a /r "..\..\inkscape\doc\keys.${polng}.html"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SectionGetFlags ${SecTutorials} $R1
IntOp $R1 $R1 & ${SF_SELECTED}
IntCmp $R1 ${SF_SELECTED} 0 skip_tutorials
SetOutPath $INSTDIR\share\tutorials
SectionGetFlags ${SecTutorials} $R1
IntOp $R1 $R1 & ${SF_SELECTED}
IntCmp $R1 ${SF_SELECTED} 0 skip_tutorials
SetOutPath $INSTDIR\share\tutorials
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a "..\..\inkscape\share\tutorials\*.${polng}.*"
File /nonfatal /a "..\..\inkscape\share\tutorials\*.${polng}.*"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
skip_tutorials:
!macroend
skip_tutorials:
!macroend
SectionIn 1 2 3 RO
SetOutPath $INSTDIR
SectionIn 1 2 3 RO
SetOutPath $INSTDIR
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
SetOverwrite on
SetAutoClose false
SetOverwrite on
SetAutoClose false
File /nonfatal /a /r "..\..\inkscape\doc"
File /nonfatal /a /r "..\..\inkscape\plugins"
File /nonfatal /a /r /x *.??*.???* /x "examples" /x "tutorials" "..\..\inkscape\share"
File /nonfatal /a /r "..\..\inkscape\doc"
File /nonfatal /a /r "..\..\inkscape\plugins"
File /nonfatal /a /r /x *.??*.???* /x "examples" /x "tutorials" "..\..\inkscape\share"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
; this files are added because it slips through the filter
SetOutPath $INSTDIR\share\clipart
; this files are added because it slips through the filter
SetOutPath $INSTDIR\share\clipart
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /a "..\..\inkscape\share\clipart\inkscape.logo.svg"
;File /a "..\..\inkscape\share\clipart\inkscape.logo.classic.svg"
File /a "..\..\inkscape\share\clipart\inkscape.logo.svg"
;File /a "..\..\inkscape\share\clipart\inkscape.logo.classic.svg"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\share\extensions
SetOutPath $INSTDIR\share\extensions
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /a "..\..\inkscape\share\extensions\pdf_output.inx.txt"
File /a "..\..\inkscape\share\extensions\pdf_output_via_gs_on_win32.inx.txt"
File /a "..\..\inkscape\share\extensions\pdf_output.inx.txt"
File /a "..\..\inkscape\share\extensions\pdf_output_via_gs_on_win32.inx.txt"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\share\icons
SetOutPath $INSTDIR\share\icons
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /a "..\..\inkscape\share\icons\inkscape.file.png"
File /a "..\..\inkscape\share\icons\inkscape.file.svg"
File /a "..\..\inkscape\share\icons\inkscape.file.png"
File /a "..\..\inkscape\share\icons\inkscape.file.svg"
- SetOutPath $INSTDIR\share\screens
- File /a "..\..\inkscape\share\screens\about.bg.svg"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\modules
SetOutPath $INSTDIR\modules
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r "..\..\inkscape\modules\*.*"
File /nonfatal /a /r "..\..\inkscape\modules\*.*"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SetOutPath $INSTDIR\python
SetOutPath $INSTDIR\python
- File /nonfatal /a /r "..\..\inkscape\python\*.*"
-
-
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
+ File /nonfatal /a /r "..\..\inkscape\python\*.*"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SectionEnd
Section $(lng_GTKFiles) SecGTK
SectionEnd
Section $(lng_GTKFiles) SecGTK
SectionIn 1 2 3 RO
SetOutPath $INSTDIR
SectionIn 1 2 3 RO
SetOutPath $INSTDIR
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
SetOverwrite on
File /a /r "..\..\inkscape\*.dll"
File /a /r /x "locale" "..\..\inkscape\lib"
File /a /r "..\..\inkscape\etc"
SetOverwrite on
File /a /r "..\..\inkscape\*.dll"
File /a /r /x "locale" "..\..\inkscape\lib"
File /a /r "..\..\inkscape\etc"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SectionEnd
Section $(lng_Alluser) SecAlluser
SectionEnd
Section $(lng_Alluser) SecAlluser
Section $(lng_Examples) SecExamples
SectionIn 1 2
SetOutPath $INSTDIR\share
Section $(lng_Examples) SecExamples
SectionIn 1 2
SetOutPath $INSTDIR\share
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\examples"
File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\examples"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SectionEnd
Section $(lng_Tutorials) SecTutorials
SectionIn 1 2
SetOutPath $INSTDIR\share
SectionEnd
Section $(lng_Tutorials) SecTutorials
SectionIn 1 2
SetOutPath $INSTDIR\share
+ !insertmacro UNINSTALL.LOG_OPEN_INSTALL
File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\tutorials"
File /nonfatal /a /r /x "*.??*.???*" "..\..\inkscape\share\tutorials"
+ !insertmacro UNINSTALL.LOG_CLOSE_INSTALL
SectionEnd
SectionGroupEnd
SectionEnd
SectionGroupEnd
!insertmacro Language bg bg
SectionEnd
!insertmacro Language bg bg
SectionEnd
+Section $(lng_bn) SecBengali
+ !insertmacro Language bn bn
+SectionEnd
+
Section $(lng_ca) SecCatalan
!insertmacro Language ca ca
SectionEnd
Section $(lng_ca) SecCatalan
!insertmacro Language ca ca
SectionEnd
SectionIn 1 2 3 RO
SectionEnd
SectionIn 1 2 3 RO
SectionEnd
+Section $(lng_en_AU) SecEnglishAustralian
+ !insertmacro Language en_AU en_AU
+SectionEnd
+
Section $(lng_en_CA) SecEnglishCanadian
!insertmacro Language en_CA en_CA
SectionEnd
Section $(lng_en_CA) SecEnglishCanadian
!insertmacro Language en_CA en_CA
SectionEnd
!insertmacro Language en_US@piglatin en_US@Piglatin
SectionEnd
!insertmacro Language en_US@piglatin en_US@Piglatin
SectionEnd
+Section $(lng_eo) SecEsperanto
+ !insertmacro Language eo eo
+SectionEnd
+
Section $(lng_es) SecSpanish
!insertmacro Language 'es' 'es'
SectionEnd
Section $(lng_es) SecSpanish
!insertmacro Language 'es' 'es'
SectionEnd
!insertmacro Language 'fr' 'fr'
SectionEnd
!insertmacro Language 'fr' 'fr'
SectionEnd
-Section $(lng_fi) SecFinish
+Section $(lng_fi) SecFinnish
!insertmacro Language 'fi' 'fi'
SectionEnd
!insertmacro Language 'fi' 'fi'
SectionEnd
SectionIn 1 2 3
SectionEnd
SectionIn 1 2 3
SectionEnd
+Section $(lng_he) SecHebrew
+ !insertmacro Language he he
+ SectionIn 1 2 3
+SectionEnd
+
Section $(lng_hr) SecCroatian
!insertmacro Language hr hr
SectionIn 1 2 3
Section $(lng_hr) SecCroatian
!insertmacro Language hr hr
SectionIn 1 2 3
SectionIn 1 2 3
SectionEnd
SectionIn 1 2 3
SectionEnd
+Section $(lng_id) SecIndonesian
+ !insertmacro Language id id
+ SectionIn 1 2 3
+SectionEnd
+
Section $(lng_it) SecItalian
!insertmacro Language it it
SectionIn 1 2 3
Section $(lng_it) SecItalian
!insertmacro Language it it
SectionIn 1 2 3
!insertmacro Language pt_BR pt_BR
SectionEnd
!insertmacro Language pt_BR pt_BR
SectionEnd
+Section $(lng_ro) SecRomanian
+ !insertmacro Language ro ro
+SectionEnd
+
Section $(lng_ru) SecRussian
!insertmacro Language ru ru
SectionEnd
Section $(lng_ru) SecRussian
!insertmacro Language ru ru
SectionEnd
; uninstall settings
ClearErrors
; uninstall settings
ClearErrors
- WriteUninstaller "$INSTDIR\uninst.exe"
- WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" '"$INSTDIR\uninst.exe"'
+ ; WriteUninstaller "$INSTDIR\uninst.exe"
+ WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\${UNINST_EXE}"
+ WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallDir" "$INSTDIR"
WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallLocation" "$INSTDIR"
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME} ${PRODUCT_VERSION}"
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Inkscape.exe,0"
WriteRegExpandStr SHCTX "${PRODUCT_UNINST_KEY}" "InstallLocation" "$INSTDIR"
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayName" "${PRODUCT_NAME} ${PRODUCT_VERSION}"
WriteRegStr SHCTX "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\Inkscape.exe,0"
!macroend
Function .onInit
!macroend
Function .onInit
+ ;prepare log always within .onInit function
+ !insertmacro UNINSTALL.LOG_PREPARE_INSTALL
+
;Extract InstallOptions INI files
StrCpy $AskMultiUser "1"
StrCpy $MultiUser "0"
;Extract InstallOptions INI files
StrCpy $AskMultiUser "1"
StrCpy $MultiUser "0"
!insertmacro Parameter "az" ${SecAzerbaijani}
!insertmacro Parameter "be" ${SecByelorussian}
!insertmacro Parameter "bg" ${SecBulgarian}
!insertmacro Parameter "az" ${SecAzerbaijani}
!insertmacro Parameter "be" ${SecByelorussian}
!insertmacro Parameter "bg" ${SecBulgarian}
+ !insertmacro Parameter "bn" ${SecBengali}
!insertmacro Parameter "ca" ${SecCatalan}
!insertmacro Parameter "cs" ${SecCzech}
!insertmacro Parameter "da" ${SecDanish}
!insertmacro Parameter "de" ${SecGerman}
!insertmacro Parameter "dz" ${SecDzongkha}
!insertmacro Parameter "el" ${SecGreek}
!insertmacro Parameter "ca" ${SecCatalan}
!insertmacro Parameter "cs" ${SecCzech}
!insertmacro Parameter "da" ${SecDanish}
!insertmacro Parameter "de" ${SecGerman}
!insertmacro Parameter "dz" ${SecDzongkha}
!insertmacro Parameter "el" ${SecGreek}
+ !insertmacro Parameter "en_AU" ${SecEnglishAustralian}
!insertmacro Parameter "en_CA" ${SecEnglishCanadian}
!insertmacro Parameter "en_GB" ${SecEnglishBritain}
!insertmacro Parameter "en_US@piglatin" ${SecEnglishPiglatin}
!insertmacro Parameter "en_CA" ${SecEnglishCanadian}
!insertmacro Parameter "en_GB" ${SecEnglishBritain}
!insertmacro Parameter "en_US@piglatin" ${SecEnglishPiglatin}
+ !insertmacro Parameter "eo" ${SecEsperanto}
!insertmacro Parameter "es" ${SecSpanish}
!insertmacro Parameter "es_MX" ${SecSpanishMexico}
!insertmacro Parameter "et" ${SecEstonian}
!insertmacro Parameter "eu" ${SecBasque}
!insertmacro Parameter "es" ${SecSpanish}
!insertmacro Parameter "es_MX" ${SecSpanishMexico}
!insertmacro Parameter "et" ${SecEstonian}
!insertmacro Parameter "eu" ${SecBasque}
- !insertmacro Parameter "fi" ${SecFinish}
+ !insertmacro Parameter "fi" ${SecFinnish}
!insertmacro Parameter "fr" ${SecFrench}
!insertmacro Parameter "ga" ${SecIrish}
!insertmacro Parameter "gl" ${SecGallegan}
!insertmacro Parameter "fr" ${SecFrench}
!insertmacro Parameter "ga" ${SecIrish}
!insertmacro Parameter "gl" ${SecGallegan}
+ !insertmacro Parameter "he" ${SecHebrew}
!insertmacro Parameter "hr" ${SecCroatian}
!insertmacro Parameter "hu" ${SecHungarian}
!insertmacro Parameter "hr" ${SecCroatian}
!insertmacro Parameter "hu" ${SecHungarian}
+ !insertmacro Parameter "id" ${SecIndonesian}
!insertmacro Parameter "it" ${SecItalian}
!insertmacro Parameter "ja" ${SecJapanese}
!insertmacro Parameter "km" ${SecKhmer}
!insertmacro Parameter "it" ${SecItalian}
!insertmacro Parameter "ja" ${SecJapanese}
!insertmacro Parameter "km" ${SecKhmer}
!insertmacro Parameter "pl" ${SecPolish}
!insertmacro Parameter "pt" ${SecPortuguese}
!insertmacro Parameter "pt_BR" ${SecPortugueseBrazil}
!insertmacro Parameter "pl" ${SecPolish}
!insertmacro Parameter "pt" ${SecPortuguese}
!insertmacro Parameter "pt_BR" ${SecPortugueseBrazil}
+ !insertmacro Parameter "ro" ${SecRomanian}
!insertmacro Parameter "ru" ${SecRussian}
!insertmacro Parameter "rw" ${SecKinyarwanda}
!insertmacro Parameter "sk" ${SecSlovak}
!insertmacro Parameter "ru" ${SecRussian}
!insertmacro Parameter "rw" ${SecKinyarwanda}
!insertmacro Parameter "sk" ${SecSlovak}
Function .onSelChange
FunctionEnd
Function .onSelChange
FunctionEnd
+
+Function .onInstSuccess
+ ;create/update log always within .onInstSuccess function
+ !insertmacro UNINSTALL.LOG_UPDATE_INSTALL
+FunctionEnd
+
; --------------------------------------------------
Function un.CustomPageUninstall
!insertmacro MUI_HEADER_TEXT "$(lng_UInstOpt)" "$(lng_UInstOpt1)"
; --------------------------------------------------
Function un.CustomPageUninstall
!insertmacro MUI_HEADER_TEXT "$(lng_UInstOpt)" "$(lng_UInstOpt1)"
- !insertmacro MUI_INSTALLOPTIONS_WRITE "inkscape.nsi.uninstall" "Field 1" "Text" "$APPDATA\Inkscape\preferences.xml"
+ !insertmacro MUI_INSTALLOPTIONS_WRITE "inkscape.nsi.uninstall" "Field 1" "Text" "$APPDATA\Inkscape\"
!insertmacro MUI_INSTALLOPTIONS_WRITE "inkscape.nsi.uninstall" "Field 2" "Text" "$(lng_PurgePrefs)"
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "inkscape.nsi.uninstall"
!insertmacro MUI_INSTALLOPTIONS_WRITE "inkscape.nsi.uninstall" "Field 2" "Text" "$(lng_PurgePrefs)"
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "inkscape.nsi.uninstall"
Function un.onInit
Function un.onInit
+ ;begin uninstall, could be added on top of uninstall section instead
+ !insertmacro UNINSTALL.LOG_BEGIN_UNINSTALL
ClearErrors
StrCpy $User ""
ClearErrors
StrCpy $User ""
; Test if this was a multiuser installation
ReadRegStr $0 HKLM "${PRODUCT_DIR_REGKEY}" ""
; Test if this was a multiuser installation
ReadRegStr $0 HKLM "${PRODUCT_DIR_REGKEY}" ""
- StrCmp $0 "$INSTDIR\inkscape.exe" 0 +5
+ StrCmp $0 "$INSTDIR\inkscape.exe" 0 hkcu_user_uninstall
ReadRegStr $MultiUser HKLM "${PRODUCT_DIR_REGKEY}" "MultiUser"
ReadRegStr $askMultiUser HKLM "${PRODUCT_DIR_REGKEY}" "askMultiUser"
ReadRegStr $0 HKLM "${PRODUCT_DIR_REGKEY}" "User"
ReadRegStr $MultiUser HKLM "${PRODUCT_DIR_REGKEY}" "MultiUser"
ReadRegStr $askMultiUser HKLM "${PRODUCT_DIR_REGKEY}" "askMultiUser"
ReadRegStr $0 HKLM "${PRODUCT_DIR_REGKEY}" "User"
- Goto +4
+ Goto check_user_uninstall
+ hkcu_user_uninstall:
ReadRegStr $MultiUser HKCU "${PRODUCT_DIR_REGKEY}" "MultiUser"
ReadRegStr $askMultiUser HKCU "${PRODUCT_DIR_REGKEY}" "askMultiUser"
ReadRegStr $0 HKCU "${PRODUCT_DIR_REGKEY}" "User"
;check user if applicable
ReadRegStr $MultiUser HKCU "${PRODUCT_DIR_REGKEY}" "MultiUser"
ReadRegStr $askMultiUser HKCU "${PRODUCT_DIR_REGKEY}" "askMultiUser"
ReadRegStr $0 HKCU "${PRODUCT_DIR_REGKEY}" "User"
;check user if applicable
- StrCmp $0 "" +3
- StrCmp $0 $User +2
+ check_user_uninstall:
+ StrCmp $0 "" diff_user_uninstall_done
+ StrCmp $0 $User diff_user_uninstall_done
MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "$(lng_DIFFERENT_USER)$(lng_OK_CANCEL_DESC)" /SD IDOK IDOK diff_user_uninstall_done IDCANCEL +1
Quit
diff_user_uninstall_done:
MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "$(lng_DIFFERENT_USER)$(lng_OK_CANCEL_DESC)" /SD IDOK IDOK diff_user_uninstall_done IDCANCEL +1
Quit
diff_user_uninstall_done:
RMDir "$SMPROGRAMS\Inkscape"
DetailPrint "removing uninstall info"
RMDir "$SMPROGRAMS\Inkscape"
DetailPrint "removing uninstall info"
- RMDir /r "$INSTDIR"
+
+ ;uninstall from path, must be repeated for every install logged path individual
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\lib\locale"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\locale"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\doc"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\tutorials"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\templates"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\screens"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\clipart"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\extensions"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share\icons"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\share"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\modules"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR\python"
+ !insertmacro UNINSTALL.LOG_UNINSTALL "$INSTDIR"
+
+ ;end uninstall, after uninstall from all logged paths has been performed
+ !insertmacro UNINSTALL.LOG_END_UNINSTALL
+
+ ;RMDir /r "$INSTDIR"
SetAutoClose false
SetAutoClose false