Files
2026-09-18 17:15:00 +02:00

77 lines
2.5 KiB
NSIS

; Transit Driver XP custom installer
!include "MUI2.nsh"
!include "WinVer.nsh"
!define APPNAME "Transit Driver XP"
!define COMPANYNAME "Transit Project"
!define DESCRIPTION "Native Windows XP-compatible driver app"
!define VERSIONMAJOR 1
!define VERSIONMINOR 1
!define VERSIONBUILD 0
Name "${APPNAME}"
OutFile "TransitDriverXPSetup.exe"
InstallDir "$PROGRAMFILES\TransitDriverXP"
InstallDirRegKey HKCU "Software\TransitDriverXP" "InstallDir"
RequestExecutionLevel admin
VIProductVersion "${VERSIONMAJOR}.${VERSIONMINOR}.${VERSIONBUILD}.0"
VIAddVersionKey "ProductName" "${APPNAME}"
VIAddVersionKey "CompanyName" "${COMPANYNAME}"
VIAddVersionKey "LegalCopyright" "Transit Project"
VIAddVersionKey "FileDescription" "${DESCRIPTION}"
VIAddVersionKey "FileVersion" "${VERSIONMAJOR}.${VERSIONMINOR}.${VERSIONBUILD}"
VIAddVersionKey "ProductVersion" "${VERSIONMAJOR}.${VERSIONMINOR}.${VERSIONBUILD}"
Function .onInit
ReadRegStr $0 HKCU "Software\TransitDriverXP" "InstallDir"
StrCmp $0 "" done
IfFileExists "$0\driver_xp.exe" 0 done
StrCpy $INSTDIR $0
MessageBox MB_OK|MB_ICONINFORMATION "An existing Transit Driver XP installation was found. It will be updated in $INSTDIR."
; Release the old executable before NSIS replaces it.
ExecWait '"$SYSDIR\taskkill.exe" /F /IM driver_xp.exe'
done:
FunctionEnd
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE "English"
Section "Install"
SetOutPath "$INSTDIR"
SetOverwrite on
File "driver_xp.exe"
File "README.md"
WriteRegStr HKCU "Software\TransitDriverXP" "InstallDir" "$INSTDIR"
WriteRegStr HKCU "Software\TransitDriverXP" "DisplayName" "${APPNAME}"
CreateDirectory "$SMPROGRAMS\TransitDriverXP"
CreateShortCut "$SMPROGRAMS\TransitDriverXP\Transit Driver XP.lnk" "$INSTDIR\driver_xp.exe"
CreateShortCut "$DESKTOP\Transit Driver XP.lnk" "$INSTDIR\driver_xp.exe"
WriteUninstaller "$INSTDIR\Uninstall.exe"
CreateShortCut "$SMPROGRAMS\TransitDriverXP\Uninstall Transit Driver XP.lnk" "$INSTDIR\Uninstall.exe"
; launch after install
ExecShell "open" "$INSTDIR\driver_xp.exe"
SectionEnd
Section "Uninstall"
Delete "$DESKTOP\Transit Driver XP.lnk"
Delete "$SMPROGRAMS\TransitDriverXP\Transit Driver XP.lnk"
Delete "$SMPROGRAMS\TransitDriverXP\Uninstall Transit Driver XP.lnk"
RMDir "$SMPROGRAMS\TransitDriverXP"
Delete "$INSTDIR\driver_xp.exe"
Delete "$INSTDIR\README.md"
Delete "$INSTDIR\Uninstall.exe"
RMDir "$INSTDIR"
DeleteRegKey HKCU "Software\TransitDriverXP"
SectionEnd