; OpenVPN install script for Windows, using NSIS
+; Start menu entries don't get uninstalled properly on Windows Vista/7 unless we
+; explicitly state that the installer requires admin privileges. This is
+; caused by backwards compatibility tricks used on those platforms. For details,
+; see http://nsis.sourceforge.net/Shortcuts_removal_fails_on_Windows_Vista
+RequestExecutionLevel admin
+
SetCompressor lzma
!include "MUI.nsh"
File "${GEN}\amd64\OemWin2k.inf"
File "${GEN}\amd64\${TAPDRV}"
- File "${GEN}\amd64\${PRODUCT_TAP_ID}.cat"
+
+ # Don't try to install TAP driver signature if it does not exist.
+ File /nonfatal "${GEN}\amd64\${PRODUCT_TAP_ID}.cat"
goto tapend
SetOutPath "$INSTDIR\driver"
File "${GEN}\i386\OemWin2k.inf"
File "${GEN}\i386\${TAPDRV}"
- File "${GEN}\i386\${PRODUCT_TAP_ID}.cat"
+
+ # Don't try to install TAP driver signature if it does not exist.
+ File /nonfatal "${GEN}\i386\${PRODUCT_TAP_ID}.cat"
tapend:
Section "Add Shortcuts to Start Menu" SecAddShortcuts
+ ; Required to handle shortcuts properly on Vista/7
+ SetShellVarContext all
SetOverwrite on
CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}"
CreateDirectory "$SMPROGRAMS\${PRODUCT_NAME}\Documentation"
Section "Uninstall"
+ ; Required to handle shortcuts properly on Vista/7
+ SetShellVarContext all
+
; Stop OpenVPN if currently running
DetailPrint "Service REMOVE"