aboutsummaryrefslogtreecommitdiff
path: root/windowsRuntimeInstaller
diff options
context:
space:
mode:
authorDavid Pinedo <david@lunarg.com>2016-03-03 12:36:24 -0700
committerDavid Pinedo <david@lunarg.com>2016-03-03 12:40:42 -0700
commit6412daca708ae2acec7c6f36322d9014f1dab05b (patch)
tree52485da1ca8c1ac9876841d3e4742c45e8943b5b /windowsRuntimeInstaller
parentd533136281a02b35787883f5fe79af592bb73d41 (diff)
downloadusermoji-6412daca708ae2acec7c6f36322d9014f1dab05b.tar.xz
winrtinstaller: Don't create a menu item for each version of RT installed
Diffstat (limited to 'windowsRuntimeInstaller')
-rw-r--r--windowsRuntimeInstaller/InstallerRT.nsi50
1 files changed, 34 insertions, 16 deletions
diff --git a/windowsRuntimeInstaller/InstallerRT.nsi b/windowsRuntimeInstaller/InstallerRT.nsi
index cd46271c..6d0b3749 100644
--- a/windowsRuntimeInstaller/InstallerRT.nsi
+++ b/windowsRuntimeInstaller/InstallerRT.nsi
@@ -333,6 +333,16 @@ Section
${StrRep} $0 ${VERSION_BUILDNO} "." "-"
StrCpy $FileVersion ${VERSION_ABI_MAJOR}-${VERSION_API_MAJOR}-${VERSION_MINOR}-${VERSION_PATCH}-$0
+ # Remove vulkaninfo from Start Menu
+ SetShellVarContext all
+ Delete "$SMPROGRAMS\Vulkan\vulkaninfo32.lnk"
+ Delete "$SMPROGRAMS\Vulkan\vulkaninfo.lnk"
+ ClearErrors
+
+ # Create Vulkan in the Start Menu
+ CreateDirectory "$SMPROGRAMS\Vulkan"
+ ClearErrors
+
# If running on a 64-bit OS machine
${If} ${RunningX64}
@@ -356,11 +366,6 @@ Section
SetOutPath "$INSTDIR"
File ..\build\demos\Release\vulkaninfo.exe
File /oname=vulkaninfo32.exe ..\build32\demos\Release\vulkaninfo.exe
- SetShellVarContext all
- CreateDirectory "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}"
- CreateDirectory "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}\Demos"
- CreateShortCut "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}\Demos\vulkaninfo32.lnk" "$INSTDIR\vulkaninfo32.exe"
- CreateShortCut "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}\Demos\vulkaninfo.lnk" "$INSTDIR\vulkaninfo.exe"
StrCpy $1 15
Call CheckForError
@@ -389,10 +394,6 @@ Section
File /oname=vulkaninfo-$FileVersion.exe ..\build32\demos\Release\vulkaninfo.exe
SetOutPath "$INSTDIR"
File ..\build32\demos\Release\vulkaninfo.exe
- SetShellVarContext all
- CreateDirectory "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}"
- CreateDirectory "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}\Demos"
- CreateShortCut "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}\Demos\vulkaninfo.lnk" "$INSTDIR\vulkaninfo.exe"
StrCpy $1 18
Call CheckForError
@@ -413,6 +414,13 @@ Section
# by the uninstaller when it needs to be run again during uninstall.
Delete ConfigLayersAndVulkanDLL.ps1
+ # Add vulkaninfo to Start Menu
+ SetShellVarContext all
+ IfFileExists $WINDIR\System32\vulkaninfo.exe 0 +2
+ CreateShortCut "$SMPROGRAMS\Vulkan\vulkaninfo.lnk" "$WINDIR\System32\vulkaninfo.exe"
+ IfFileExists $WINDIR\SysWow64\vulkaninfo.exe 0 +2
+ CreateShortCut "$SMPROGRAMS\Vulkan\vulkaninfo32.lnk" "$WINDIR\SysWow64\vulkaninfo.exe"
+
# Possibly install MSVC 2013 redistributables
${If} ${RunningX64}
@@ -495,7 +503,10 @@ Section "uninstall"
${Endif}
# Modify registry for Programs and Features
- DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCTNAME}${PRODUCTVERSION}-$IC"
+
+ ${If} $IC > 1
+ DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCTNAME}${PRODUCTVERSION}-$IC"
+ ${EndIf}
${If} $IC > 2
IntOp $IC $IC - 1
WriteRegDword HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCTNAME}${PRODUCTVERSION}-$IC" "SystemComponent" 0
@@ -555,19 +566,25 @@ Section "uninstall"
${EndIf}
# Delete vulkaninfo from start menu.
- # Delete vulkan start menu if the vulkan start menu is empty
SetShellVarContext all
- Delete "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}\Demos\vulkaninfo.lnk"
+ Delete "$SMPROGRAMS\Vulkan\vulkaninfo.lnk"
# If running on a 64-bit OS machine
${If} ${RunningX64}
- Delete "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}\Demos\vulkaninfo32.lnk"
+ Delete "$SMPROGRAMS\Vulkan\vulkaninfo32.lnk"
${EndIf}
- StrCpy $0 "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}\Demos"
- Call un.DeleteDirIfEmpty
- StrCpy $0 "$SMPROGRAMS\Vulkan ${PRODUCTVERSION}"
+ # Possibly add vulkaninfo to Start Menu
+ SetShellVarContext all
+ IfFileExists $WINDIR\System32\vulkaninfo.exe 0 +2
+ CreateShortCut "$SMPROGRAMS\Vulkan\vulkaninfo.lnk" "$WINDIR\System32\vulkaninfo.exe"
+ IfFileExists $WINDIR\SysWow64\vulkaninfo.exe 0 +2
+ CreateShortCut "$SMPROGRAMS\Vulkan\vulkaninfo32.lnk" "$WINDIR\SysWow64\vulkaninfo.exe"
+
+ # Possibly delete vulkan Start Menu
+ StrCpy $0 "$SMPROGRAMS\Vulkan"
Call un.DeleteDirIfEmpty
+ ClearErrors
# Remove files in install dir
Delete /REBOOTOK "$IDir\VULKANRT_LICENSE.rtf"
@@ -593,6 +610,7 @@ Section "uninstall"
Rmdir /REBOOTOK "$IDir"
StrCpy $0 "$PROGRAMFILES\${PRODUCTNAME}"
Call un.DeleteDirIfEmpty
+ ClearErrors
# If any of the remove commands failed, request a reboot
IfRebootFlag 0 noreboot