61 lines
1.9 KiB
NSIS
61 lines
1.9 KiB
NSIS
# For my application GUID (fix GUID to match what your application uses)
|
|
!macro customInit
|
|
# Workaround for installer handing when the app directory is removed manually
|
|
${ifNot} ${FileExists} "$INSTDIR"
|
|
DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_GUID}"
|
|
${EndIf}
|
|
|
|
DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\{${APP_GUID}}"
|
|
|
|
ReadRegStr $0 HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_GUID}" "QuietUninstallString"
|
|
StrCmp $0 "" proceed 0
|
|
DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_GUID}"
|
|
proceed:
|
|
!macroend
|
|
|
|
!macro customUnInstall
|
|
push $4
|
|
push $0
|
|
|
|
SetShellVarContext current
|
|
ClearErrors
|
|
${ifNot} ${isUpdated}
|
|
|
|
MessageBox MB_YESNO "Also delete all your user data? (instances, preferences...)" IDNO Skipped IDYES Accepted
|
|
|
|
Accepted:
|
|
FileOpen $4 "$APPDATA\gdlauncher_next\override.data" r
|
|
FileRead $4 $0
|
|
RMDir /r "$0\instances"
|
|
RMDir /r "$0\java"
|
|
RMDir /r "$0\datastore"
|
|
RMDir /r "$0\blob_storage"
|
|
RMDir /r "$0\Local Storage"
|
|
RMDir /r "$0\Cache"
|
|
RMDir /r "$0\Code Cache"
|
|
RMDir /r "$0\Dictionaries"
|
|
RMDir /r "$0\GPUCache"
|
|
RMDir /r "$0\Session Storage"
|
|
RMDir /r "$0\shared_proto_db"
|
|
RMDir /r "$0\temp"
|
|
Delete "$0\Cookies"
|
|
Delete "$0\.updaterId"
|
|
Delete "$0\7za.exe"
|
|
Delete "$0\Cookies-journal"
|
|
Delete "$0\Network Persistent State"
|
|
Delete "$0\Preferences"
|
|
Delete "$0\TransportSecurity"
|
|
Delete "$0\Config"
|
|
Delete "$0\rChannel"
|
|
|
|
FileClose $4
|
|
|
|
RMDir /r "$APPDATA\gdlauncher_next"
|
|
Goto done
|
|
Skipped:
|
|
Goto done
|
|
done:
|
|
${endIf}
|
|
pop $4
|
|
pop $0
|
|
!macroend |