105 lines
3.4 KiB
Text
Executable file
105 lines
3.4 KiB
Text
Executable file
; llcon NSIS installer script
|
|
|
|
!define APP_NAME "Llcon"
|
|
!define APP_EXE "llcon.exe"
|
|
!define AUTORUN_NAME "llcon server"
|
|
!define UNINSTALL_EXE "Uninstall.exe"
|
|
!define INSTALLER_NAME "llconinstaller.exe"
|
|
!define VS_REDIST_PATH "C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\vcredist_x86\"
|
|
;!define VS_REDIST_PATH "C:\Programme\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\vcredist_x86\"
|
|
!define VS_REDIST_EXE "vcredist_x86.exe"
|
|
!define UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${APP_NAME}"
|
|
!define AUTORUN_KEY "Software\Microsoft\Windows\CurrentVersion\Run"
|
|
|
|
|
|
SetCompressor lzma
|
|
Name "${APP_NAME}"
|
|
Caption "${APP_NAME}"
|
|
OutFile "${INSTALLER_NAME}"
|
|
InstallDir "$PROGRAMFILES\${APP_NAME}"
|
|
|
|
LicenseText "License"
|
|
LicenseData "..\COPYING"
|
|
|
|
Page license
|
|
Page directory
|
|
Page instfiles
|
|
|
|
|
|
Section
|
|
|
|
; check if software is currently running
|
|
FindProcDLL::FindProc "${APP_EXE}"
|
|
IntCmp $R0 1 0 notRunning
|
|
MessageBox MB_OK|MB_ICONEXCLAMATION "${APP_NAME} is running. Please close it and run the setup again." /SD IDOK
|
|
Abort
|
|
notRunning:
|
|
|
|
; add reg keys so that software appears in Windows "Add/Remove Software"
|
|
WriteRegStr HKLM "${UNINST_KEY}" "DisplayName" "${APP_NAME} (remove only)"
|
|
WriteRegStr HKLM "${UNINST_KEY}" "UninstallString" '"$INSTDIR\${UNINSTALL_EXE}"'
|
|
|
|
SetOutPath $INSTDIR
|
|
|
|
; main application
|
|
File "Release\${APP_EXE}"
|
|
|
|
; QT dlls
|
|
File "$%QTDIR%\bin\QtCore4.dll"
|
|
File "$%QTDIR%\bin\QtGui4.dll"
|
|
File "$%QTDIR%\bin\QtNetwork4.dll"
|
|
File "$%QTDIR%\bin\QtXml4.dll"
|
|
|
|
; other files
|
|
File "..\COPYING"
|
|
|
|
; temporarily create Microsoft Visual Studio redistributable,
|
|
File "${VS_REDIST_PATH}${VS_REDIST_EXE}"
|
|
ExecWait '"$INSTDIR\${VS_REDIST_EXE}" /Q'
|
|
|
|
; uninstaller
|
|
WriteUninstaller $INSTDIR\${UNINSTALL_EXE}
|
|
|
|
; shortcuts
|
|
CreateShortCut "$DESKTOP\${APP_NAME}.lnk" "$OUTDIR\${APP_EXE}"
|
|
|
|
CreateDirectory "$SMPROGRAMS\${APP_NAME}"
|
|
CreateShortCut "$SMPROGRAMS\${APP_NAME}\${APP_NAME}.lnk" "$INSTDIR\${APP_EXE}"
|
|
CreateShortCut "$SMPROGRAMS\${APP_NAME}\${APP_NAME} server.lnk" "$INSTDIR\${APP_EXE}" "-s"
|
|
CreateShortCut "$SMPROGRAMS\${APP_NAME}\${UNINSTALL_EXE}.lnk" "$INSTDIR\${UNINSTALL_EXE}"
|
|
|
|
; cleanup: remove temporary Microsoft Visual Studio redistributable executable
|
|
Delete $INSTDIR\${VS_REDIST_EXE}
|
|
|
|
; accessible qt plugin
|
|
SetOutPath $INSTDIR\accessible
|
|
File "$%QTDIR%\plugins\accessible\qtaccessiblewidgets4.dll"
|
|
|
|
SectionEnd
|
|
|
|
|
|
Section "Uninstall"
|
|
|
|
DeleteRegKey HKLM "${UNINST_KEY}"
|
|
|
|
; the software may have written an auto run entry in the registry, remove it
|
|
DeleteRegValue HKCU "${AUTORUN_KEY}" "${AUTORUN_NAME}"
|
|
|
|
Delete "$DESKTOP\${APP_NAME}.lnk"
|
|
Delete "$SMPROGRAMS\${APP_NAME}\${APP_NAME}.lnk"
|
|
Delete "$SMPROGRAMS\${APP_NAME}\${APP_NAME} server.lnk"
|
|
Delete "$SMPROGRAMS\${APP_NAME}\${UNINSTALL_EXE}.lnk"
|
|
RMDIR "$SMPROGRAMS\${APP_NAME}"
|
|
|
|
Delete $INSTDIR\${UNINSTALL_EXE}
|
|
Delete $INSTDIR\${APP_EXE}
|
|
Delete $INSTDIR\QtCore4.dll
|
|
Delete $INSTDIR\QtGui4.dll
|
|
Delete $INSTDIR\QtNetwork4.dll
|
|
Delete $INSTDIR\QtXml4.dll
|
|
Delete $INSTDIR\COPYING
|
|
Delete $INSTDIR\accessible\qtaccessiblewidgets4.dll
|
|
RMDir $INSTDIR\accessible
|
|
RMDir $INSTDIR
|
|
|
|
SectionEnd
|