Files
LuaCsForBarotraumaEP/Libraries/MonoGame.Framework/Src/Installers/Windows/MonoGame.nsi
T
2019-06-25 16:00:44 +03:00

397 lines
19 KiB
NSIS

SetCompressor /SOLID /FINAL lzma
!include "header.nsh"
!define APPNAME "MonoGame"
;Include Modern UI
!include "Sections.nsh"
!include "MUI2.nsh"
!include "InstallOptions.nsh"
!define MUI_ICON "${FrameworkPath}\monogame.ico"
!define MUI_UNICON "${FrameworkPath}\monogame.ico"
Name '${APPNAME} SDK ${INSTALLERVERSION}'
OutFile 'MonoGameSetup.exe'
InstallDir '$PROGRAMFILES\${APPNAME}\v${VERSION}'
!define MSBuildInstallDir '$PROGRAMFILES32\MSBuild\${APPNAME}\v${VERSION}'
VIProductVersion "${INSTALLERVERSION}"
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductName" "${APPNAME} SDK"
VIAddVersionKey /LANG=${LANG_ENGLISH} "CompanyName" "The MonoGame Team"
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileVersion" "${INSTALLERVERSION}"
VIAddVersionKey /LANG=${LANG_ENGLISH} "ProductVersion" "${INSTALLERVERSION}"
VIAddVersionKey /LANG=${LANG_ENGLISH} "FileDescription" "${APPNAME} SDK Installer"
VIAddVersionKey /LANG=${LANG_ENGLISH} "LegalCopyright" "Copyright © The MonoGame Team"
; Request application privileges for Windows Vista
RequestExecutionLevel admin
;Interface Configuration
!define MUI_HEADERIMAGE
!define MUI_HEADERIMAGE_BITMAP "${FrameworkPath}\monogame.bmp"
!define MUI_ABORTWARNING
!define MUI_WELCOMEFINISHPAGE_BITMAP "${FrameworkPath}\panel.bmp"
;Languages
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE "..\..\License.txt"
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!macro VS_ASSOCIATE_EDITOR TOOLNAME VSVERSION EXT TOOLPATH
WriteRegStr HKCU 'Software\Microsoft\VisualStudio\${VSVERSION}\Default Editors\${EXT}' 'Custom' '${TOOLNAME}'
WriteRegDWORD HKCU 'Software\Microsoft\VisualStudio\${VSVERSION}\Default Editors\${EXT}' 'Type' 0x00000002
WriteRegStr HKCU 'Software\Microsoft\VisualStudio\${VSVERSION}\Default Editors\${EXT}\${TOOLNAME}' '' '${TOOLPATH}'
WriteRegStr HKCU 'Software\Microsoft\VisualStudio\${VSVERSION}\Default Editors\${EXT}\${TOOLNAME}' 'Arguments' ''
!macroend
!macro APP_ASSOCIATE EXT FILECLASS DESCRIPTION ICON COMMANDTEXT COMMAND
WriteRegStr HKCR ".${EXT}" "" "${FILECLASS}"
WriteRegStr HKCR "${FILECLASS}" "" `${DESCRIPTION}`
WriteRegStr HKCR "${FILECLASS}\DefaultIcon" "" `${ICON}`
WriteRegStr HKCR "${FILECLASS}\shell" "" "open"
WriteRegStr HKCR "${FILECLASS}\shell\open" "" `${COMMANDTEXT}`
WriteRegStr HKCR "${FILECLASS}\shell\open\command" "" `${COMMAND}`
!macroend
;--------------------------------
;Languages
!insertmacro MUI_LANGUAGE "English"
;--------------------------------
; The stuff to install
Section "MonoGame Core Components" CoreComponents ;No components page, name is not important
SectionIn RO
; Install the VS support files.
SetOutPath ${MSBuildInstallDir}
File '..\..\MonoGame.Framework.Content.Pipeline\MonoGame.Content.Builder.targets'
File '..\..\MonoGame.Framework.Content.Pipeline\MonoGame.Common.props'
File '..\..\Tools\Pipeline\bin\Windows\AnyCPU\Release\MonoGame.Build.Tasks.dll'
; Install the MonoGame tools to a single shared folder.
SetOutPath ${MSBuildInstallDir}\Tools
File /r '..\..\Tools\2MGFX\bin\Windows\AnyCPU\Release\*.exe'
File /r '..\..\Tools\2MGFX\bin\Windows\AnyCPU\Release\*.dll'
File /r '..\..\Tools\MGCB\bin\Windows\AnyCPU\Release\*.exe'
File /r '..\..\Tools\MGCB\bin\Windows\AnyCPU\Release\*.dll'
File /r '..\..\Tools\Pipeline\bin\Windows\AnyCPU\Release\*.exe'
File /r '..\..\Tools\Pipeline\bin\Windows\AnyCPU\Release\*.dll'
File /r '..\..\Tools\Pipeline\bin\Windows\AnyCPU\Release\*.xml'
File /r '..\..\Tools\Pipeline\bin\Windows\AnyCPU\Release\Templates'
; Associate .mgcb files open in the Pipeline tool.
!insertmacro VS_ASSOCIATE_EDITOR 'MonoGame Pipeline' '10.0' 'mgcb' '${MSBuildInstallDir}\Tools\Pipeline.exe'
!insertmacro VS_ASSOCIATE_EDITOR 'MonoGame Pipeline' '11.0' 'mgcb' '${MSBuildInstallDir}\Tools\Pipeline.exe'
!insertmacro VS_ASSOCIATE_EDITOR 'MonoGame Pipeline' '12.0' 'mgcb' '${MSBuildInstallDir}\Tools\Pipeline.exe'
!insertmacro VS_ASSOCIATE_EDITOR 'MonoGame Pipeline' '14.0' 'mgcb' '${MSBuildInstallDir}\Tools\Pipeline.exe'
!insertmacro VS_ASSOCIATE_EDITOR 'MonoGame Pipeline' '15.0' 'mgcb' '${MSBuildInstallDir}\Tools\Pipeline.exe'
!insertmacro APP_ASSOCIATE 'mgcb' 'MonoGame.ContentBuilderFile' 'A MonoGame content builder project.' '${MSBuildInstallDir}\Tools\Pipeline.exe,0' 'Open with Pipeline' '${MSBuildInstallDir}\Tools\Pipeline.exe "%1"'
; Install the assemblies for all the platforms we can
; target from a Windows desktop system.
; Install Android Assemblies
SetOutPath '$INSTDIR\Assemblies\Android'
File '..\..\MonoGame.Framework\bin\Android\AnyCPU\Release\*.dll'
File '..\..\MonoGame.Framework\bin\Android\AnyCPU\Release\*.xml'
; Install DesktopGL Assemblies
SetOutPath '$INSTDIR\Assemblies\DesktopGL'
File /nonfatal '..\..\MonoGame.Framework\bin\WindowsGL\AnyCPU\Release\*.dll'
File /nonfatal ' ..\..\MonoGame.Framework\bin\WindowsGL\AnyCPU\Release\*.xml'
File '..\..\ThirdParty\Dependencies\SDL\MacOS\Universal\libSDL2-2.0.0.dylib'
File '..\..\ThirdParty\Dependencies\openal-soft\MacOS\Universal\libopenal.1.dylib'
File '..\..\ThirdParty\Dependencies\MonoGame.Framework.dll.config'
; Install x86 DesktopGL Dependencies
SetOutPath '$INSTDIR\Assemblies\DesktopGL\x86'
File '..\..\ThirdParty\Dependencies\SDL\Windows\x86\SDL2.dll'
File '..\..\ThirdParty\Dependencies\openal-soft\Windows\x86\soft_oal.dll'
File '..\..\ThirdParty\Dependencies\SDL\Linux\x86\libSDL2-2.0.so.0'
File '..\..\ThirdParty\Dependencies\openal-soft\Linux\x86\libopenal.so.1'
; Install x64 DesktopGL Dependencies
SetOutPath '$INSTDIR\Assemblies\DesktopGL\x64'
File '..\..\ThirdParty\Dependencies\SDL\Windows\x64\SDL2.dll'
File '..\..\ThirdParty\Dependencies\openal-soft\Windows\x64\soft_oal.dll'
File '..\..\ThirdParty\Dependencies\SDL\Linux\x64\libSDL2-2.0.so.0'
File '..\..\ThirdParty\Dependencies\openal-soft\Linux\x64\libopenal.so.1'
; Install Windows Desktop DirectX Assemblies
SetOutPath '$INSTDIR\Assemblies\Windows'
File '..\..\MonoGame.Framework\bin\Windows\AnyCPU\Release\*.dll'
File '..\..\MonoGame.Framework\bin\Windows\AnyCPU\Release\*.xml'
; Install Windows 10 UAP Assemblies
SetOutPath '$INSTDIR\Assemblies\WindowsUniversal'
File '..\..\MonoGame.Framework\bin\WindowsUniversal\AnyCPU\Release\*.dll'
File '..\..\MonoGame.Framework\bin\WindowsUniversal\AnyCPU\Release\*.xml'
; Install iOS Assemblies
IfFileExists `$PROGRAMFILES\MSBuild\Xamarin\iOS\*.*` InstalliOSAssemblies SkipiOSAssemblies
InstalliOSAssemblies:
SetOutPath '$INSTDIR\Assemblies\iOS'
File '..\..\MonoGame.Framework\bin\iOS\iPhoneSimulator\Release\*.dll'
File '..\..\MonoGame.Framework\bin\iOS\iPhoneSimulator\Release\*.xml'
SetOutPath '$INSTDIR\Assemblies\tvOS'
File '..\..\MonoGame.Framework\bin\tvOS\iPhoneSimulator\Release\*.dll'
File '..\..\MonoGame.Framework\bin\tvOS\iPhoneSimulator\Release\*.xml'
SkipiOSAssemblies:
WriteRegStr HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Desktop OpenGL' '' '$INSTDIR\Assemblies\DesktopGL'
WriteRegStr HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows' '' '$INSTDIR\Assemblies\Windows'
WriteRegStr HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows 10 Universal' '' '$INSTDIR\Assemblies\WindowsUniversal'
WriteRegStr HKLM 'SOFTWARE\Microsoft\MonoAndroid\v2.3\AssemblyFoldersEx\${APPNAME} for Android' '' '$INSTDIR\Assemblies\Android'
WriteRegStr HKLM 'SOFTWARE\Microsoft\MonoTouch\v1.0\AssemblyFoldersEx\${APPNAME} for iOS' '' '$INSTDIR\Assemblies\iOS'
IfFileExists $WINDIR\SYSWOW64\*.* Is64bit Is32bit
Is32bit:
GOTO End32Bitvs64BitCheck
Is64bit:
WriteRegStr HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Desktop OpenGL' '' '$INSTDIR\Assemblies\DesktopGL'
WriteRegStr HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows' '' '$INSTDIR\Assemblies\Windows'
WriteRegStr HKLM 'SOFTWARE\Wow6432Node\Microsoft\MonoTouch\v1.0\AssemblyFoldersEx\${APPNAME} for iOS' '' '$INSTDIR\Assemblies\iOS'
WriteRegStr HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows 10 Universal' '' '$INSTDIR\Assemblies\WindowsUniversal'
End32Bitvs64BitCheck:
; Add remote programs
WriteRegStr HKLM 'Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}' 'DisplayName' '${APPNAME} SDK'
WriteRegStr HKLM 'Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}' 'DisplayVersion' '${INSTALLERVERSION}'
WriteRegStr HKLM 'Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}' 'DisplayIcon' '$INSTDIR\monogame.ico'
WriteRegStr HKLM 'Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}' 'InstallLocation' '$INSTDIR\'
WriteRegStr HKLM 'Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}' 'Publisher' 'The MonoGame Team'
WriteRegStr HKLM 'Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}' 'UninstallString' '$INSTDIR\uninstall.exe'
SetOutPath '$INSTDIR'
File '..\monogame.ico'
; Uninstaller
WriteUninstaller "uninstall.exe"
SectionEnd
Section "Visual Studio 2010 Templates" VS2010
IfFileExists `$DOCUMENTS\Visual Studio 2010\Templates\ProjectTemplates\*.*` InstallTemplates CannotInstallTemplates
InstallTemplates:
SetOutPath "$DOCUMENTS\Visual Studio 2010\Templates\ProjectTemplates\Visual C#\MonoGame"
File /r '..\..\ProjectTemplates\VisualStudio2010\*.zip'
GOTO EndTemplates
CannotInstallTemplates:
DetailPrint "Visual Studio 2010 not found"
EndTemplates:
SectionEnd
Section "Visual Studio 2013 Templates" VS2013
IfFileExists `$DOCUMENTS\Visual Studio 2013\Templates\ProjectTemplates\*.*` InstallTemplates CannotInstallTemplates
InstallTemplates:
SetOutPath "$DOCUMENTS\Visual Studio 2013\Templates\ProjectTemplates\Visual C#\MonoGame"
File /r '..\..\ProjectTemplates\VisualStudio2013\*.zip'
File /r '..\..\ProjectTemplates\VisualStudio2010\*.zip'
GOTO EndTemplates
CannotInstallTemplates:
DetailPrint "Visual Studio 2013 not found"
EndTemplates:
SectionEnd
Section "Visual Studio 2015 Templates" VS2015
IfFileExists `$DOCUMENTS\Visual Studio 2015\Templates\ProjectTemplates\*.*` InstallTemplates CannotInstallTemplates
InstallTemplates:
SetOutPath "$DOCUMENTS\Visual Studio 2015\Templates\ProjectTemplates\Visual C#\MonoGame"
File /r '..\..\ProjectTemplates\VisualStudio2010\*.zip'
File /r '..\..\ProjectTemplates\VisualStudio2015\*.zip'
GOTO EndTemplates
CannotInstallTemplates:
DetailPrint "Visual Studio 2015 not found"
EndTemplates:
SectionEnd
Section "Visual Studio 2017 Templates" VS2017
IfFileExists `$DOCUMENTS\Visual Studio 2017\Templates\ProjectTemplates\*.*` InstallTemplates CannotInstallTemplates
InstallTemplates:
SetOutPath "$DOCUMENTS\Visual Studio 2017\Templates\ProjectTemplates\Visual C#\MonoGame"
File /r '..\..\ProjectTemplates\VisualStudio2010\*.zip'
File /r '..\..\ProjectTemplates\VisualStudio2013\MonoGameShared.zip'
File /r '..\..\ProjectTemplates\VisualStudio2015\WindowsUniversal10.VB.zip'
File /r '..\..\ProjectTemplates\VisualStudio2017\*.zip'
GOTO EndTemplates
CannotInstallTemplates:
DetailPrint "Visual Studio 2017 not found"
EndTemplates:
SectionEnd
; Optional section (can be disabled by the user)
Section "Start Menu Shortcuts" Menu
CreateDirectory $SMPROGRAMS\${APPNAME}
SetOutPath "$INSTDIR"
CreateShortCut "$SMPROGRAMS\${APPNAME}\Uninstall MonoGame.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
SetOutPath "${MSBuildInstallDir}\Tools"
CreateShortCut "$SMPROGRAMS\${APPNAME}\MonoGame Pipeline.lnk" "${MSBuildInstallDir}\Tools\Pipeline.exe" "" "${MSBuildInstallDir}\Tools\Pipeline.exe" 0
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Website.url" "InternetShortcut" "URL" "http://www.monogame.net"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Website.url" "InternetShortcut" "IconFile" "$INSTDIR\monogame.ico"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Website.url" "InternetShortcut" "IconIndex" "0"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Documentation.url" "InternetShortcut" "URL" "http://www.monogame.net/documentation"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Documentation.url" "InternetShortcut" "IconFile" "$INSTDIR\monogame.ico"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Documentation.url" "InternetShortcut" "IconIndex" "0"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Support.url" "InternetShortcut" "URL" "http://community.monogame.net/"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Support.url" "InternetShortcut" "IconFile" "$INSTDIR\monogame.ico"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Support.url" "InternetShortcut" "IconIndex" "0"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Bug Reports.url" "InternetShortcut" "URL" "https://github.com/mono/MonoGame/issues"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Bug Reports.url" "InternetShortcut" "IconFile" "$INSTDIR\monogame.ico"
WriteINIStr "$SMPROGRAMS\${APPNAME}\MonoGame Bug Reports.url" "InternetShortcut" "IconIndex" "0"
SectionEnd
LangString CoreComponentsDesc ${LANG_ENGLISH} "Install the Runtimes and the MSBuild extensions for MonoGame"
LangString MonoDevelopDesc ${LANG_ENGLISH} "Install the project templates for MonoDevelop"
LangString VS2010Desc ${LANG_ENGLISH} "Install the project templates for Visual Studio 2010"
LangString VS2012Desc ${LANG_ENGLISH} "Install the project templates for Visual Studio 2012"
LangString VS2013Desc ${LANG_ENGLISH} "Install the project templates for Visual Studio 2013"
LangString VS2015Desc ${LANG_ENGLISH} "Install the project templates for Visual Studio 2015"
LangString VS2017Desc ${LANG_ENGLISH} "Install the project templates for Visual Studio 2017"
LangString MenuDesc ${LANG_ENGLISH} "Add a link to the MonoGame website to your start menu"
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${CoreComponents} $(CoreComponentsDesc)
!insertmacro MUI_DESCRIPTION_TEXT ${MonoDevelop} $(MonoDevelopDesc)
!insertmacro MUI_DESCRIPTION_TEXT ${VS2010} $(VS2010Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${VS2012} $(VS2012Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${VS2013} $(VS2013Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${VS2015} $(VS2015Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${VS2017} $(VS2017Desc)
!insertmacro MUI_DESCRIPTION_TEXT ${Menu} $(MenuDesc)
!insertmacro MUI_FUNCTION_DESCRIPTION_END
Function checkVS2010
IfFileExists `$DOCUMENTS\Visual Studio 2010\Templates\ProjectTemplates\*.*` end disable
disable:
SectionSetFlags ${VS2010} $0
end:
FunctionEnd
Function checkVS2012
IfFileExists `$DOCUMENTS\Visual Studio 2012\Templates\ProjectTemplates\*.*` end disable
disable:
SectionSetFlags ${VS2012} $0
end:
FunctionEnd
Function checkVS2013
IfFileExists `$DOCUMENTS\Visual Studio 2013\Templates\ProjectTemplates\*.*` end disable
disable:
SectionSetFlags ${VS2013} $0
end:
FunctionEnd
Function checkVS2015
IfFileExists `$DOCUMENTS\Visual Studio 2015\Templates\ProjectTemplates\*.*` end disable
disable:
SectionSetFlags ${VS2015} $0
end:
FunctionEnd
Function checkVS2017
IfFileExists `$DOCUMENTS\Visual Studio 2017\Templates\ProjectTemplates\*.*` end disable
disable:
SectionSetFlags ${VS2017} $0
end:
FunctionEnd
Function .onInit
IntOp $0 $0 | ${SF_RO}
Call checkVS2010
Call checkVS2012
Call checkVS2013
Call checkVS2015
Call checkVS2017
IntOp $0 ${SF_SELECTED} | ${SF_RO}
SectionSetFlags ${core_id} $0
FunctionEnd
;--------------------------------
;Uninstaller Section
Section "Uninstall"
DeleteRegKey HKLM 'Software\Microsoft\Windows\CurrentVersion\Uninstall\${APPNAME}'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Desktop OpenGL'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME}'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx\${APPNAME} for Windows Store'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx\${APPNAME} for Windows Phone 8.1'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows Phone ARM'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows Phone x86'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx\${APPNAME} for Windows 10 UAP'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\MonoAndroid\v2.3\AssemblyFoldersEx\${APPNAME} for Android'
DeleteRegKey HKLM 'SOFTWARE\Microsoft\MonoTouch\v1.0\AssemblyFoldersEx\${APPNAME} for iOS'
DeleteRegKey HKCU 'Software\Microsoft\VisualStudio\10.0\Default Editors\mgcb'
DeleteRegKey HKCU 'Software\Microsoft\VisualStudio\11.0\Default Editors\mgcb'
DeleteRegKey HKCU 'Software\Microsoft\VisualStudio\12.0\Default Editors\mgcb'
DeleteRegKey HKCR '.mgcb'
DeleteRegKey HKCR 'MonoGame.ContentBuilderFile'
IfFileExists $WINDIR\SYSWOW64\*.* Is64bit Is32bit
Is32bit:
GOTO End32Bitvs64BitCheck
Is64bit:
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Desktop OpenGL'
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows'
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx\${APPNAME} for Windows Store'
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.5.50709\AssemblyFoldersEx\${APPNAME} for Windows Phone 8.1'
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows Phone ARM'
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows Phone x86'
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v4.0.30319\AssemblyFoldersEx\${APPNAME} for Windows 10 UAP'
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\MonoAndroid\v2.3\AssemblyFoldersEx\${APPNAME} for Android'
DeleteRegKey HKLM 'SOFTWARE\Wow6432Node\Microsoft\MonoTouch\v1.0\AssemblyFoldersEx\${APPNAME} for iOS'
End32Bitvs64BitCheck:
ReadRegStr $0 HKLM 'SOFTWARE\Wow6432Node\Xamarin\MonoDevelop' "Path"
${If} $0 == "" ; check on 32 bit machines just in case
ReadRegStr $0 HKLM 'SOFTWARE\Xamarin\MonoDevelop' "Path"
${EndIf}
${If} $0 == ""
${Else}
RMDir /r "$0\AddIns\MonoDevelop.MonoGame"
${EndIf}
RMDir /r "$DOCUMENTS\Visual Studio 2010\Templates\ProjectTemplates\Visual C#\MonoGame"
RMDir /r "$DOCUMENTS\Visual Studio 2013\Templates\ProjectTemplates\Visual C#\MonoGame"
RMDir /r "$DOCUMENTS\Visual Studio 2015\Templates\ProjectTemplates\Visual C#\MonoGame"
RMDir /r "$DOCUMENTS\Visual Studio 2017\Templates\ProjectTemplates\Visual C#\MonoGame"
RMDir /r "${MSBuildInstallDir}"
RMDir /r "$SMPROGRAMS\${APPNAME}"
Delete "$INSTDIR\Uninstall.exe"
RMDir /r "$INSTDIR"
SectionEnd