11 # ----------------------------------
13 Section "un.LyX" un.SecUnProgramFiles
16 # LaTeX class files that were installed together with LyX
17 # will not be uninstalled because other LyX versions will
18 # need them and these few files don't harm to stay in LaTeX
21 RMDir /r "$INSTDIR\bin"
24 RMDir /r "$INSTDIR\Resources"
27 RMDir /r "$INSTDIR\python"
28 ReadRegStr $0 SHCTX "Software\Classes\Python.File" "OnlyWithLyX" # test if it was registered by this LyX version
29 ${if} $0 == "Yes${APP_SERIES_KEY}"
30 DeleteRegKey SHCTX "Software\Classes\Python.File"
34 RMDir /r "$INSTDIR\imagemagick"
36 # Components of Ghostscript
37 RMDir /r "$INSTDIR\ghostscript"
39 # delete start menu folder
40 ReadRegStr $0 SHCTX "${APP_UNINST_KEY}" "StartMenu"
43 Delete "$DESKTOP\${APP_NAME} ${APP_SERIES_NAME}.lnk"
45 # remove file extension .lyx
46 ReadRegStr $0 SHCTX "${APP_DIR_REGKEY}" "OnlyWithLyX" # test if they were registered by this LyX version
47 ${if} $0 == "Yes${APP_SERIES_KEY}"
48 ReadRegStr $R0 SHCTX "Software\Classes\${APP_EXT}" ""
49 ${if} $R0 == "${APP_REGNAME_DOC}"
50 #DeleteRegKey SHCTX "Software\Classes\${APP_EXT}13"
51 #DeleteRegKey SHCTX "Software\Classes\${APP_EXT}14"
52 #DeleteRegKey SHCTX "Software\Classes\${APP_EXT}15"
53 #DeleteRegKey SHCTX "Software\Classes\${APP_EXT}16"
54 #DeleteRegKey SHCTX "Software\Classes\${APP_EXT}20"
55 #DeleteRegKey SHCTX "Software\Classes\${APP_EXT}21"
56 DeleteRegKey SHCTX "Software\Classes\${APP_EXT}"
57 #DeleteRegKey SHCTX "Software\Classes\${APP_REGNAME_DOC}"
60 ${if} $MultiUser.Privileges == "Admin"
61 DeleteRegKey HKCR "${APP_NAME}.Document"
65 Delete "$INSTDIR\${SETUP_UNINSTALLER}"
71 # Registry keys and values
72 DeleteRegValue SHCTX "subkey" "key_name"
73 DeleteRegKey SHCTX "${APP_REGKEY_SETUP}"
74 DeleteRegKey SHCTX "${APP_REGKEY}"
75 DeleteRegKey SHCTX "${APP_UNINST_KEY}"
76 DeleteRegKey HKCR "Applications\${BIN_LYX}"
77 DeleteRegValue HKCR "${APP_NAME}.Document\Shell\open\command" ""
78 DeleteRegValue HKCR "${APP_NAME}.Document\DefaultIcon" ""
79 ReadRegStr $0 SHCTX ${APP_REGFOLDER} "latestVersion"
80 ${If} $0 == ${APP_SERIES_KEY}
81 DeleteRegValue SHCTX ${APP_REGFOLDER} "latestVersion"
86 EnumRegKey $R0 SHCTX ${APP_REGFOLDER} $0
88 ${LoopUntil} $R0 == ""
90 WriteRegStr SHCTX ${APP_REGFOLDER} "latestVersion" $R1
93 DeleteRegKey /ifempty SHCTX ${APP_REGFOLDER}
96 ReadRegStr $FileAssociation SHELL_CONTEXT "Software\Classes\${APP_EXT}" ""
98 ${If} $FileAssociation == "${APP_REGNAME_DOC}"
99 DeleteRegKey SHELL_CONTEXT "Software\Classes\${APP_EXT}"
102 # clean other registry entries
103 DeleteRegKey SHCTX "SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\${APP_NAME}.exe"
104 DeleteRegKey SHCTX "SOFTWARE\${APP_REGKEY}"
106 # delete info that programs were installed together with LyX
107 DeleteRegValue SHCTX "SOFTWARE\MiKTeX.org\MiKTeX" "OnlyWithLyX"
109 # for texindy the path to the perl.exe must unfortunately be in Windows' PATH variable
110 # so we have to remove it now
111 ${if} $MultiUser.Privileges != "Admin"
112 ${andif} $MultiUser.Privileges != "Power"
113 # call the non-admin version
114 ${un.EnvVarUpdate} $0 "PATH" "R" "HKCU" "$INSTDIR\Perl\bin"
116 ${un.EnvVarUpdate} $0 "PATH" "R" "HKLM" "$INSTDIR\Perl\bin"
121 #---------------------------------
123 Section /o "un.$(UnLyXPreferencesTitle)" un.SecUnPreferences
125 # remove LyX's config files
126 StrCpy $AppSubfolder ${APP_DIR_USERDATA}
127 Call un.DelAppPathSub # function from LyXUtils.nsh
128 # remove registry settings
129 DeleteRegKey HKCU "Software\${APP_NAME}\${APP_NAME}${APP_SERIES_NAME}"
133 #---------------------------------
135 Section "un.MiKTeX" un.SecUnMiKTeX
137 ${if} $LaTeXInstalled == "MiKTeX" # only uninstall MiKTeX when it was installed together with LyX
138 ReadRegStr $1 SHCTX "Software\Microsoft\Windows\CurrentVersion\Uninstall\MiKTeX ${MiKTeXDeliveredVersion}" "UninstallString"
139 ExecWait $1 # run MiKTeX's uninstaller
144 #---------------------------------
145 # Section descriptions
146 !insertmacro MUI_UNFUNCTION_DESCRIPTION_BEGIN
147 !insertmacro MUI_DESCRIPTION_TEXT ${un.SecUnMiKTeX} "$(SecUnMiKTeXDescription)"
148 !insertmacro MUI_DESCRIPTION_TEXT ${un.SecUnPreferences} "$(SecUnPreferencesDescription)"
149 !insertmacro MUI_DESCRIPTION_TEXT ${un.SecUnProgramFiles} "$(SecUnProgramFilesDescription)"
150 !insertmacro MUI_UNFUNCTION_DESCRIPTION_END
152 #Section "un.User Preferences and Custom Files" un.SecUserFiles
154 # SetShellVarContext current
155 # RMDir /r "$APPDATA\${APP_DIR_USERDATA}"