1Name "Virtual MIDI Piano Keyboard" 2SetCompressor /SOLID lzma 3# Request application privileges for Windows Vista 4RequestExecutionLevel admin 5 6# Defines 7!define QTFILES "C:\Qt\Qt5.5.0\5.5\mingw492_32" 8!define BINFILES "C:\freesw\bin" 9!define DRUMSTICK "C:\freesw\lib\drumstick" 10!define VMPKSRC "C:\Users\pedro\Projects\vmpk-desktop" 11!define VMPKBLD "C:\Users\pedro\Projects\vmpk-build-release" 12 13!define REGKEY "SOFTWARE\$(^Name)" 14!define VERSION 0.6.2 15!define COMPANY VMPK 16!define URL http://vmpk.sourceforge.net/ 17 18# Included files 19!include Sections.nsh 20!include MUI2.nsh 21!include Library.nsh 22 23# Variables 24Var StartMenuGroup 25 26# MUI defines 27!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\modern-install.ico" 28!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\modern-uninstall.ico" 29!define MUI_STARTMENUPAGE_REGISTRY_ROOT HKLM 30!define MUI_STARTMENUPAGE_NODISABLE 31!define MUI_STARTMENUPAGE_REGISTRY_KEY ${REGKEY} 32!define MUI_STARTMENUPAGE_REGISTRY_VALUENAME StartMenuGroup 33!define MUI_STARTMENUPAGE_DEFAULTFOLDER vmpk 34 35# Installer pages 36!define MUI_WELCOMEPAGE_TITLE_3LINES 37!insertmacro MUI_PAGE_WELCOME 38!insertmacro MUI_PAGE_LICENSE gpl.rtf 39!insertmacro MUI_PAGE_DIRECTORY 40!insertmacro MUI_PAGE_STARTMENU Application $StartMenuGroup 41!insertmacro MUI_PAGE_INSTFILES 42!define MUI_FINISHPAGE_TITLE_3LINES 43!define MUI_FINISHPAGE_NOAUTOCLOSE 44!define MUI_FINISHPAGE_RUN $INSTDIR\vmpk.exe 45!define MUI_FINISHPAGE_LINK $(FinishLinkText) 46!define MUI_FINISHPAGE_LINK_LOCATION "http://play.google.com/store/apps/details?id=net.sourceforge.vmpk.free" 47!define MUI_PAGE_CUSTOMFUNCTION_SHOW CustomFinishShow 48!insertmacro MUI_PAGE_FINISH 49 50!define MUI_UNFINISHPAGE_NOAUTOCLOSE 51!define MUI_WELCOMEPAGE_TITLE_3LINES 52!define MUI_FINISHPAGE_TITLE_3LINES 53!insertmacro MUI_UNPAGE_WELCOME 54!insertmacro MUI_UNPAGE_CONFIRM 55!insertmacro MUI_UNPAGE_INSTFILES 56!insertmacro MUI_UNPAGE_FINISH 57 58# Installer languages 59!insertmacro MUI_LANGUAGE "English" 60!insertmacro MUI_LANGUAGE "Czech" 61!insertmacro MUI_LANGUAGE "French" 62!insertmacro MUI_LANGUAGE "Galician" 63!insertmacro MUI_LANGUAGE "German" 64!insertmacro MUI_LANGUAGE "Russian" 65!insertmacro MUI_LANGUAGE "Serbian" 66!insertmacro MUI_LANGUAGE "Spanish" 67!insertmacro MUI_LANGUAGE "Swedish" 68#!insertmacro MUI_LANGUAGE "Dutch" 69#!insertmacro MUI_LANGUAGE "SimpChinese" 70 71;Language strings 72LangString FinishLinkText ${LANG_ENGLISH} "Android Application on Google Play" 73LangString FinishLinkText ${LANG_CZECH} "Aplikace pro Android ve službě Google Play" 74LangString FinishLinkText ${LANG_FRENCH} "Application Android sur Google Play" 75LangString FinishLinkText ${LANG_GALICIAN} "Aplicación para Android en Google Play" 76LangString FinishLinkText ${LANG_GERMAN} "Applikation für Android auf Google Play" 77LangString FinishLinkText ${LANG_RUSSIAN} "Приложения для Android на Google Play" 78LangString FinishLinkText ${LANG_SERBIAN} "Андроид апликација на Гоогле Плаи" 79LangString FinishLinkText ${LANG_SPANISH} "Aplicación para Android en Google Play" 80LangString FinishLinkText ${LANG_SWEDISH} "Applikationer på Google Play" 81 82# Installer attributes 83OutFile vmpk-${VERSION}-win32-setup.exe 84InstallDir $PROGRAMFILES\vmpk 85CRCCheck on 86XPStyle on 87ShowInstDetails show 88VIProductVersion 0.6.2.0 89VIAddVersionKey ProductName VMPK 90VIAddVersionKey ProductVersion "${VERSION}" 91VIAddVersionKey CompanyName "${COMPANY}" 92VIAddVersionKey CompanyWebsite "${URL}" 93VIAddVersionKey FileVersion "${VERSION}" 94VIAddVersionKey FileDescription "Virtual MIDI Piano Keyboard" 95VIAddVersionKey LegalCopyright "Copyright (C) 2008-2021 Pedro Lopez-Cabanillas and others" 96InstallDirRegKey HKLM "${REGKEY}" Path 97ShowUninstDetails show 98Icon src\vmpk.ico 99 100# Installer sections 101Section -Main SEC0000 102 CreateDirectory $INSTDIR\drumstick 103 CreateDirectory $INSTDIR\platforms 104 CreateDirectory $INSTDIR\iconengines 105 CreateDirectory $APPDATA\SoundFonts 106 SetOutPath $INSTDIR 107 SetOverwrite on 108 File ${VMPKSRC}\qt.conf 109 File ${VMPKBLD}\src\vmpk.exe 110 File ${VMPKSRC}\data\spanish.xml 111 File ${VMPKSRC}\data\german.xml 112 File ${VMPKSRC}\data\azerty.xml 113 File ${VMPKSRC}\data\it-qwerty.xml 114 File ${VMPKSRC}\data\vkeybd-default.xml 115 File ${VMPKSRC}\data\pc102win.xml 116 File ${VMPKSRC}\data\Serbian-lat.xml 117 File ${VMPKSRC}\data\Serbian-cyr.xml 118 File ${VMPKSRC}\data\gmgsxg.ins 119 File ${VMPKSRC}\data\help.html 120 File ${VMPKSRC}\data\help_es.html 121 File ${VMPKSRC}\data\help_sr.html 122 File ${VMPKSRC}\data\help_ru.html 123 File ${VMPKBLD}\translations\vmpk_cs.qm 124 File ${VMPKBLD}\translations\vmpk_de.qm 125 File ${VMPKBLD}\translations\vmpk_es.qm 126 File ${VMPKBLD}\translations\vmpk_fr.qm 127 File ${VMPKBLD}\translations\vmpk_gl.qm 128 File ${VMPKBLD}\translations\vmpk_ru.qm 129 File ${VMPKBLD}\translations\vmpk_sr.qm 130 File ${VMPKBLD}\translations\vmpk_sv.qm 131# File ${VMPKBLD}\translations\vmpk_nl.qm 132# File ${VMPKBLD}\translations\vmpk_zh_CN.qm 133 File ${QTFILES}\translations\qt_cs.qm 134 File ${QTFILES}\translations\qt_de.qm 135 File ${QTFILES}\translations\qt_es.qm 136 File ${QTFILES}\translations\qt_fr.qm 137 File ${QTFILES}\translations\qt_gl.qm 138 File ${QTFILES}\translations\qt_sv.qm 139 File ${QTFILES}\translations\qt_ru.qm 140 File ${QTFILES}\translations\qtbase_cs.qm 141 File ${QTFILES}\translations\qtscript_cs.qm 142 File ${QTFILES}\translations\qtquick1_cs.qm 143 File ${QTFILES}\translations\qtmultimedia_cs.qm 144 File ${QTFILES}\translations\qtxmlpatterns_cs.qm 145 File ${QTFILES}\translations\qtbase_de.qm 146 File ${QTFILES}\translations\qtscript_de.qm 147 File ${QTFILES}\translations\qtquick1_de.qm 148 File ${QTFILES}\translations\qtmultimedia_de.qm 149 File ${QTFILES}\translations\qtxmlpatterns_de.qm 150 File ${QTFILES}\translations\qtbase_ru.qm 151 File ${QTFILES}\translations\qtscript_ru.qm 152 File ${QTFILES}\translations\qtquick1_ru.qm 153 File ${QTFILES}\translations\qtmultimedia_ru.qm 154 File ${QTFILES}\translations\qtxmlpatterns_ru.qm 155# File ${QTFILES}\translations\qt_zh_CN.qm 156 File "/oname=$APPDATA\SoundFonts\GeneralUser GS FluidSynth v1.44.sf2" "C:\ProgramData\SoundFonts\GeneralUser GS FluidSynth v1.44.sf2" 157 158 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\libstdc++-6.dll $INSTDIR\libstdc++-6.dll $INSTDIR 159 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\libwinpthread-1.dll $INSTDIR\libwinpthread-1.dll $INSTDIR 160 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\libgcc_s_dw2-1.dll $INSTDIR\libgcc_s_dw2-1.dll $INSTDIR 161 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\Qt5Core.dll $INSTDIR\Qt5Core.dll $INSTDIR 162 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\Qt5Gui.dll $INSTDIR\Qt5Gui.dll $INSTDIR 163 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\Qt5Svg.dll $INSTDIR\Qt5Svg.dll $INSTDIR 164 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\Qt5Network.dll $INSTDIR\Qt5Network.dll $INSTDIR 165 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\Qt5Widgets.dll $INSTDIR\Qt5Widgets.dll $INSTDIR 166 ; !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\icudt52.dll $INSTDIR\icudt52.dll $INSTDIR 167 ; !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\icuin52.dll $INSTDIR\icuin52.dll $INSTDIR 168 ; !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\bin\icuuc52.dll $INSTDIR\icuuc52.dll $INSTDIR 169 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\plugins\platforms\qwindows.dll $INSTDIR\platforms\qwindows.dll $INSTDIR 170 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${QTFILES}\plugins\iconengines\qsvgicon.dll $INSTDIR\iconengines\qsvgicon.dll $INSTDIR 171 172 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${BINFILES}\intl.dll $INSTDIR\intl.dll $INSTDIR 173 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${BINFILES}\libdrumstick-rt.dll $INSTDIR\libdrumstick-rt.dll $INSTDIR 174 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${BINFILES}\libfluidsynth.dll $INSTDIR\libfluidsynth.dll $INSTDIR 175 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${BINFILES}\libglib-2.0-0.dll $INSTDIR\libglib-2.0-0.dll $INSTDIR 176 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${BINFILES}\libgthread-2.0-0.dll $INSTDIR\libgthread-2.0-0.dll $INSTDIR 177 178 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${DRUMSTICK}\libdrumstick-rt-net-in.dll $INSTDIR\drumstick\libdrumstick-rt-net-in.dll $INSTDIR 179 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${DRUMSTICK}\libdrumstick-rt-net-out.dll $INSTDIR\drumstick\libdrumstick-rt-net-out.dll $INSTDIR 180 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${DRUMSTICK}\libdrumstick-rt-synth.dll $INSTDIR\drumstick\libdrumstick-rt-synth.dll $INSTDIR 181 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${DRUMSTICK}\libdrumstick-rt-win-in.dll $INSTDIR\drumstick\libdrumstick-rt-win-in.dll $INSTDIR 182 !insertmacro InstallLib DLL NOTSHARED REBOOT_PROTECTED ${DRUMSTICK}\libdrumstick-rt-win-out.dll $INSTDIR\drumstick\libdrumstick-rt-win-out.dll $INSTDIR 183 184 WriteRegStr HKLM "${REGKEY}\Components" Main 1 185SectionEnd 186 187Section -post SEC0001 188 WriteRegStr HKLM "${REGKEY}" Path $INSTDIR 189 SetOutPath $INSTDIR 190 WriteUninstaller $INSTDIR\uninstall.exe 191 192 !insertmacro MUI_STARTMENU_WRITE_BEGIN Application 193 CreateDirectory $SMPROGRAMS\$StartMenuGroup 194 SetOutPath $SMPROGRAMS\$StartMenuGroup 195 CreateShortcut "$SMPROGRAMS\$StartMenuGroup\Uninstall VMPK.lnk" $INSTDIR\uninstall.exe 196 CreateShortcut "$SMPROGRAMS\$StartMenuGroup\VMPK.lnk" $INSTDIR\vmpk.exe 197 !insertmacro MUI_STARTMENU_WRITE_END 198 199 WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayName "$(^Name)" 200 WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayVersion "${VERSION}" 201 WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" Publisher "${COMPANY}" 202 WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" URLInfoAbout "${URL}" 203 WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" DisplayIcon $INSTDIR\uninstall.exe 204 WriteRegStr HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" UninstallString $INSTDIR\uninstall.exe 205 WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" NoModify 1 206 WriteRegDWORD HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" NoRepair 1 207 208 WriteRegStr HKCU "Software\vmpk.sourceforge.net\VMPK-$(^Name)\Connections" InputDriver "Network" 209 WriteRegStr HKCU "Software\vmpk.sourceforge.net\VMPK-$(^Name)\Connections" OutputDriver "FluidSynth" 210 WriteRegStr HKCU "Software\vmpk.sourceforge.net\VMPK-$(^Name)\Connections" InPort "21928" 211 WriteRegStr HKCU "Software\vmpk.sourceforge.net\VMPK-$(^Name)\Connections" OutPort "FluidSynth" 212 WriteRegStr HKCU "Software\vmpk.sourceforge.net\VMPK-$(^Name)\Connections" InEnabled "true" 213 WriteRegStr HKCU "Software\vmpk.sourceforge.net\VMPK-$(^Name)\Connections" ThruEnabled "true" 214 WriteRegStr HKCU "Software\vmpk.sourceforge.net\VMPK-$(^Name)\FluidSynth" InstrumentsDefinition "$APPDATA\SoundFonts\GeneralUser GS FluidSynth v1.44.sf2" 215 216SectionEnd 217 218# Macro for selecting uninstaller sections 219!macro SELECT_UNSECTION SECTION_NAME UNSECTION_ID 220 Push $R0 221 ReadRegStr $R0 HKLM "${REGKEY}\Components" "${SECTION_NAME}" 222 StrCmp $R0 1 0 next${UNSECTION_ID} 223 !insertmacro SelectSection "${UNSECTION_ID}" 224 GoTo done${UNSECTION_ID} 225next${UNSECTION_ID}: 226 !insertmacro UnselectSection "${UNSECTION_ID}" 227done${UNSECTION_ID}: 228 Pop $R0 229!macroend 230 231# Uninstaller sections 232Section /o -un.Main UNSEC0000 233 Delete /REBOOTOK $INSTDIR\qt.conf 234 Delete /REBOOTOK $INSTDIR\qt_cs.qm 235 Delete /REBOOTOK $INSTDIR\qt_de.qm 236 Delete /REBOOTOK $INSTDIR\qt_es.qm 237 Delete /REBOOTOK $INSTDIR\qt_fr.qm 238 Delete /REBOOTOK $INSTDIR\qt_gl.qm 239 Delete /REBOOTOK $INSTDIR\qt_ru.qm 240 Delete /REBOOTOK $INSTDIR\qt_sv.qm 241 Delete /REBOOTOK $INSTDIR\vmpk_cs.qm 242 Delete /REBOOTOK $INSTDIR\vmpk_de.qm 243 Delete /REBOOTOK $INSTDIR\vmpk_es.qm 244 Delete /REBOOTOK $INSTDIR\vmpk_fr.qm 245 Delete /REBOOTOK $INSTDIR\vmpk_gl.qm 246 Delete /REBOOTOK $INSTDIR\vmpk_ru.qm 247 Delete /REBOOTOK $INSTDIR\vmpk_sr.qm 248 Delete /REBOOTOK $INSTDIR\vmpk_sv.qm 249 Delete /REBOOTOK $INSTDIR\qtbase_cs.qm 250 Delete /REBOOTOK $INSTDIR\qtscript_cs.qm 251 Delete /REBOOTOK $INSTDIR\qtquick1_cs.qm 252 Delete /REBOOTOK $INSTDIR\qtmultimedia_cs.qm 253 Delete /REBOOTOK $INSTDIR\qtxmlpatterns_cs.qm 254 Delete /REBOOTOK $INSTDIR\qtbase_de.qm 255 Delete /REBOOTOK $INSTDIR\qtscript_de.qm 256 Delete /REBOOTOK $INSTDIR\qtquick1_de.qm 257 Delete /REBOOTOK $INSTDIR\qtmultimedia_de.qm 258 Delete /REBOOTOK $INSTDIR\qtxmlpatterns_de.qm 259 Delete /REBOOTOK $INSTDIR\qtbase_ru.qm 260 Delete /REBOOTOK $INSTDIR\qtscript_ru.qm 261 Delete /REBOOTOK $INSTDIR\qtquick1_ru.qm 262 Delete /REBOOTOK $INSTDIR\qtmultimedia_ru.qm 263 Delete /REBOOTOK $INSTDIR\qtxmlpatterns_ru.qm 264 Delete /REBOOTOK $INSTDIR\vmpk.exe 265 Delete /REBOOTOK $INSTDIR\spanish.xml 266 Delete /REBOOTOK $INSTDIR\german.xml 267 Delete /REBOOTOK $INSTDIR\azerty.xml 268 Delete /REBOOTOK $INSTDIR\it-qwerty.xml 269 Delete /REBOOTOK $INSTDIR\vkeybd-default.xml 270 Delete /REBOOTOK $INSTDIR\pc102win.xml 271 Delete /REBOOTOK $INSTDIR\Serbian-lat.xml 272 Delete /REBOOTOK $INSTDIR\Serbian-cyr.xml 273 Delete /REBOOTOK $INSTDIR\gmgsxg.ins 274 Delete /REBOOTOK $INSTDIR\help.html 275 Delete /REBOOTOK $INSTDIR\help_es.html 276 Delete /REBOOTOK $INSTDIR\help_ru.html 277 Delete /REBOOTOK $INSTDIR\help_sr.html 278 Delete /REBOOTOK "$APPDATA\SoundFonts\GeneralUser GS FluidSynth v1.44.sf2" 279 280 !insertmacro UnInstallLib DLL SHARED REBOOT_PROTECTED $INSTDIR\libstdc++-6.dll 281 !insertmacro UnInstallLib DLL SHARED REBOOT_PROTECTED $INSTDIR\libwinpthread-1.dll 282 !insertmacro UnInstallLib DLL SHARED REBOOT_PROTECTED $INSTDIR\libgcc_s_dw2-1.dll 283 284 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\Qt5Core.dll 285 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\Qt5Gui.dll 286 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\Qt5Svg.dll 287 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\Qt5Network.dll 288 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\Qt5Widgets.dll 289 ; !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\icudt52.dll 290 ; !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\icuin52.dll 291 ; !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\icuuc52.dll 292 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\platforms\qwindows.dll 293 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\iconengines\qsvgicon.dll 294 295 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\intl.dll 296 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\libdrumstick-rt.dll 297 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\libfluidsynth.dll 298 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\libglib-2.0-0.dll 299 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\libgthread-2.0-0.dll 300 301 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\drumstick\libdrumstick-rt-net-in.dll 302 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\drumstick\libdrumstick-rt-net-out.dll 303 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\drumstick\libdrumstick-rt-synth.dll 304 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\drumstick\libdrumstick-rt-win-in.dll 305 !insertmacro UnInstallLib DLL NOTSHARED REBOOT_PROTECTED $INSTDIR\drumstick\libdrumstick-rt-win-out.dll 306 307 RMDir /REBOOTOK $INSTDIR\drumstick 308 RMDir /REBOOTOK $INSTDIR\platforms 309 RMDir /REBOOTOK $INSTDIR\iconengines 310 RMDir /REBOOTOK $APPDATA\SoundFonts 311 312 DeleteRegValue HKLM "${REGKEY}\Components" Main 313SectionEnd 314 315Section -un.post UNSEC0001 316 DeleteRegKey HKLM "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\$(^Name)" 317 Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\Uninstall VMPK.lnk" 318 Delete /REBOOTOK "$SMPROGRAMS\$StartMenuGroup\VMPK.lnk" 319 Delete /REBOOTOK $INSTDIR\uninstall.exe 320 DeleteRegValue HKLM "${REGKEY}" StartMenuGroup 321 DeleteRegValue HKLM "${REGKEY}" Path 322 DeleteRegKey /IfEmpty HKLM "${REGKEY}\Components" 323 DeleteRegKey /IfEmpty HKLM "${REGKEY}" 324 RMDir /REBOOTOK $SMPROGRAMS\$StartMenuGroup 325 RMDir /REBOOTOK $INSTDIR 326SectionEnd 327 328#Installer Functions 329Function .onInit 330 !insertmacro MUI_LANGDLL_DISPLAY 331FunctionEnd 332 333# Uninstaller functions 334Function un.onInit 335 !insertmacro MUI_UNGETLANGUAGE 336 ReadRegStr $INSTDIR HKLM "${REGKEY}" Path 337 !insertmacro MUI_STARTMENU_GETFOLDER Application $StartMenuGroup 338 !insertmacro SELECT_UNSECTION Main ${UNSEC0000} 339FunctionEnd 340 341Function OpenLink 342 ExecShell open "http://play.google.com/store/apps/details?id=net.sourceforge.vmpk.free" 343FunctionEnd 344 345Var hCtl_Finish_Bitmap1 346Var hCtl_Finish_Bitmap1_hImage 347 348Function CustomFinishShow 349 ${NSD_CreateBitmap} 120u 130u 90u 30u "" 350 Pop $hCtl_Finish_Bitmap1 351 ${NSD_OnClick} $hCtl_Finish_Bitmap1 OpenLink 352 ${Switch} $LANGUAGE 353 ${Case} ${LANG_ENGLISH} 354 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\en_app.bmp" 355 ${Break} 356 ${Case} ${LANG_CZECH} 357 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\cs_app.bmp" 358 ${Break} 359 ${Case} ${LANG_FRENCH} 360 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\fr_app.bmp" 361 ${Break} 362 ${Case} ${LANG_GALICIAN} 363 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\es_app.bmp" 364 ${Break} 365 ${Case} ${LANG_GERMAN} 366 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\de_app.bmp" 367 ${Break} 368 ${Case} ${LANG_RUSSIAN} 369 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\ru_app.bmp" 370 ${Break} 371 ${Case} ${LANG_SERBIAN} 372 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\sr_app.bmp" 373 ${Break} 374 ${Case} ${LANG_SPANISH} 375 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\es_app.bmp" 376 ${Break} 377 ${Case} ${LANG_SWEDISH} 378 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\sv_app.bmp" 379 ${Break} 380 ${Default} 381 File "/oname=$PLUGINSDIR\banner.bmp" "${VMPKSRC}\data\en_app.bmp" 382 ${Break} 383 ${EndSwitch} 384 ${NSD_SetImage} $hCtl_Finish_Bitmap1 "$PLUGINSDIR\banner.bmp" $hCtl_Finish_Bitmap1_hImage 385FunctionEnd 386