Windows installer updates:

* New versions of dependencies
* Improved MiKTeX detection
* Remove language selection during installation (this is now set in the LyX preferences)
* Remove hacks from LyXLauncher that are no longer needed with gettext 0.18
* Clean up some code that is no longer in use

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_1_6_X@34916 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Joost Verburg 2010-07-16 14:17:03 +00:00
parent 9f7bec1798
commit 5ca5dceac7
12 changed files with 85 additions and 294 deletions

View File

@ -34,7 +34,6 @@ Win32/packaging/icons/lyx_doc_32x32_16colors.png \
Win32/packaging/installer/graphics/header.bmp \
Win32/packaging/installer/graphics/wizard.bmp \
Win32/packaging/installer/gui/external.nsh \
Win32/packaging/installer/gui/langselect.nsh \
Win32/packaging/installer/gui/reinstall.nsh \
Win32/packaging/installer/include/declarations.nsh \
Win32/packaging/installer/include/detection.nsh \

View File

@ -3,12 +3,9 @@
LyX for Windows Launcher
Author: Joost Verburg
This will be installed as lyx.exe.
This will be installed as LyXLauncher.exe.
The application will setup the environment variables based on registry
settings and obtain the command line output of lyxc.exe, which can be shown
while debugging or in case of a crash. Version information and an icon are
also included.
The launcher application hides the lyx.exe console window.
*/
@ -39,7 +36,6 @@ RequestExecutionLevel user
Var Parameters
Var Debug
Var LyXLanguage
Var ReturnValue
Var ResultText
@ -47,9 +43,6 @@ Var ResultSubText
Var LyXFolder
Var LyXSetting
Var LyXSettingValue
Var EnvironmentVariable
Var EnvironmentVariableValue
@ -127,35 +120,11 @@ Section -Prepare
SetDetailsPrint textonly
DetailPrint "Debug log:"
SetDetailsPrint listonly
# LyX Language
!insertmacro GetLyXSetting "Language" $LyXLanguage
# Set language for gettext
${if} $LyXLanguage != ""
Push LC_ALL
Push $LyXLanguage
Call SetEnvironmentVariable
${endif}
# Apparently the output charset needs to be set to some value,
# otherwise no non-ASCII characters will be displayed
Push OUTPUT_CHARSET
Push -
Call SetEnvironmentVariable
# Location of Aiksaurus data
Push AIK_DATA_DIR
Push "$LyXFolder\aiksaurus"
Call SetEnvironmentVariable
# Location of Ghostscript (for ImageMagick)
Push LYX_GHOSTSCRIPT_EXE
Push "$LyXFolder\ghostscript\gswin32c.exe"
Call SetEnvironmentVariable
Push LYX_GHOSTSCRIPT_DLL
Push "$LyXFolder\ghostscript\gsdll32.dll"
Call SetEnvironmentVariable
SectionEnd
@ -255,23 +224,6 @@ Function InitInterface
FunctionEnd
Function GetLyXSetting
Pop $LyxSetting
# Get a LyX setting from the registry
# First try a current user setting, then a system setting
ReadRegStr $LyXSettingValue HKCU ${APP_REGKEY_SETTINGS} $LyXSetting
${If} $LyXSettingValue == ""
ReadRegStr $LyXSettingValue HKLM ${APP_REGKEY_SETTINGS} $LyXSetting
${EndIf}
Push $LyXSettingValue
FunctionEnd
Function SetEnvironmentVariable
# Sets the value of an environment variable

View File

@ -14,21 +14,23 @@ SetCompressor /SOLID lzma
!ifdef FilesLyX
!define FILES_LYX "${FilesLyX}"
!else
!define FILES_LYX "..\..\..\..\build-msvc"
!define FILES_LYX "..\..\..\..\..\lyx-1.6.8-install"
!endif
!ifdef FilesDeps
!define FILES_DEPS "${FilesDeps}"
!else
!define FILES_DEPS "..\..\..\..\lyx-windows-deps-msvc2008"
!define FILES_DEPS "..\..\..\..\deps"
!endif
!ifdef FilesBundle
!define FILES_BUNDLE "${FilesBundle}"
!else
!define FILES_BUNDLE "..\..\..\..\lyx-windows-bundle-deps"
!define FILES_BUNDLE "..\..\..\..\depsbundle"
!endif
!define FILES_QT "C:\Qt\4.6.3"
#--------------------------------
# File locations
@ -38,11 +40,7 @@ SetCompressor /SOLID lzma
!define FILES_LAUNCHER "..\..\launcher"
!define FILES_PDFVIEW "..\..\pdfview"
!if ${COMPILER_OS} == VISTA
!define FILES_MSVC "$%SystemRoot%\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91"
!else
!define FILES_MSVC "$%SystemRoot%\WinSxS\x86_Microsoft.VC90.CRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_d08d0375"
!endif
!define FILES_MSVC "${FILES_DEPS}\bin"
!define FILES_PYTHON "${FILES_DEPS}\python"
!define FILES_IMAGEMAGICK "${FILES_DEPS}\imagemagick"
!define FILES_GHOSTSCRIPT "${FILES_DEPS}\ghostscript"
@ -54,7 +52,6 @@ SetCompressor /SOLID lzma
!define FILES_PDFTOOLS "${FILES_DEPS}\pdftools"
!define FILES_METAFILE2EPS "${FILES_DEPS}\metafile2eps"
!define FILES_QT "${FILES_DEPS}\qt-4"
!define FILES_ASPELLDATA "${FILES_DEPS}\aspell"
!define FILES_NSISPLUGINS "${FILES_DEPS}\nsis"
@ -65,16 +62,12 @@ SetCompressor /SOLID lzma
# CTAN and SourceForge select a mirror automatically
!define DOWNLOAD_LATEX "http://www.ctan.org/get/systems/win32/miktex/setup/${SETUPFILE_LATEX}"
!define DOWNLOAD_IMAGEMAGICK "http://downloads.sourceforge.net/imagemagick/${SETUPFILE_IMAGEMAGICK}"
!define DOWNLOAD_GHOSTSCRIPT "http://downloads.sourceforge.net/imagemagick/${SETUPFILE_GHOSTSCRIPT}"
!define DOWNLOAD_ASPELLDICTS "ftp://ftp.lyx.org/pub/lyx/contrib/aspell6-windows"
#--------------------------------
# Locations of setup files for components (for bundled setup)
!define INSTALL_LATEX "${SETUPFILE_LATEX}"
!define INSTALL_IMAGEMAGICK "${SETUPFILE_IMAGEMAGICK}"
!define INSTALL_GHOSTSCRIPT "${SETUPFILE_GHOSTSCRIPT}"
#--------------------------------
# Names and version
@ -86,7 +79,7 @@ SetCompressor /SOLID lzma
!define APP_DIR "${APP_NAME}${APP_SERIES_KEY}"
!define APP_DIR_USERDATA "${APP_NAME}${APP_SERIES_KEY}"
!define APP_INFO "${APP_NAME} - The Document Processor"
!define APP_COPYRIGHT "LyX is Copyright © 1995 by Matthias Ettrich, 1995-2008 LyX Team"
!define APP_COPYRIGHT "LyX is Copyright © 1995 by Matthias Ettrich, 1995-2010 LyX Team"
!define APP_RUN "bin\LyXLauncher.exe"
@ -108,22 +101,14 @@ SetCompressor /SOLID lzma
!ifndef SETUPTYPE
!define SETUPTYPE STANDARD
!endif
!if ${SETUPTYPE} == MINIMAL
!define SETUP_EXE ${MinimalExeFile}
!else if ${SETUPTYPE} == STANDARD
!if ${SETUPTYPE} == STANDARD
!define SETUP_EXE ${ExeFile}
!define BUNDLE_IMAGEMAGICK
!define BUNDLE_GHOSTSCRIPT
!else if ${SETUPTYPE} == BUNDLE
!define SETUP_EXE ${BundleExeFile}
!define BUNDLE_IMAGEMAGICK
!define BUNDLE_GHOSTSCRIPT
!define BUNDLESETUP_LATEX
!endif
@ -138,8 +123,6 @@ SetCompressor /SOLID lzma
# Names of binaries to identify compontents
!define BIN_LATEX "tex.exe"
!define BIN_IMAGEMAGICK "convert.exe"
!define BIN_GHOSTSCRIPT "gswin32c.exe"
!define BIN_BIBTEXEDITOR "JabRef.exe"
#--------------------------------

View File

@ -9,12 +9,6 @@ Detection of external component locations
Function SearchExternal
Call SearchLaTeX
Call SearchBibTeXEditor
!ifndef BUNDLE_IMAGEMAGICK
Call SearchImageMagick
!endif
!ifndef BUNDLE_GHOSTSCRIPT
Call SearchGhostscript
!endif
FunctionEnd
#--------------------------------
@ -22,8 +16,6 @@ FunctionEnd
Var ReportReturn
Var CommandLineOutput
Var LastChar
Var PathLength
!macro SEARCH_MIKTEX25
@ -34,32 +26,60 @@ Var PathLength
Pop $ReportReturn
Pop $CommandLineOutput
${WordFind2X} $CommandLineOutput "BinDir: " "$\r" "+1" $PathLaTeX
${WordFind2X} $CommandLineOutput "CommonData: " "$\r" "+1" $PathLaTeXLocal # Local root
!macroend
!macro SEARCH_MIKTEX24 ROOTKEY
ReadRegStr $PathLaTeX ${ROOTKEY} "Software\MiK\MiKTeX\CurrentVersion\MiKTeX" "Install Root"
${If} $PathLaTeX != ""
StrCpy $LastChar $PathLaTeX 1 -1
${If} $LastChar == "\"
# Trim backslash
StrLen $PathLength $PathLaTeX
IntOp $PathLength $PathLength - 1
StrCpy $PathLaTeX $PathLaTeX $PathLength
ClearErrors
${WordFind2X} $CommandLineOutput "BinDir: " "$\r" "E+1" $PathLaTeX
${If} ${Errors}
ClearErrors
${WordFind2X} $CommandLineOutput "CommonInstall: " "$\r" "E+1" $PathLaTeX
${If} ${Errors}
StrCpy $PathLaTeX ""
${Else}
StrCpy $PathLaTeX "$PathLaTeX\miktex\bin"
${EndIf}
StrCpy $PathLaTeX "$PathLaTeX\miktex\bin"
#Local root
ReadRegStr $PathLaTeXLocal ${ROOTKEY} "Software\MiK\MiKTeX\CurrentVersion\MiKTeX" "Local Root"
${EndIf}
ClearErrors
${WordFind2X} $CommandLineOutput "BinDir: " "$\r" "E+1" $PathLaTeX
${If} ${Errors}
StrCpy $PathLaTeX ""
${EndIf}
${If} $PathLatex == ""
ClearErrors
${WordFind2X} $CommandLineOutput "CommonInstall: " "$\r" "E+1" $PathLaTeX
${If} ${Errors}
StrCpy $PathLaTeX ""
${Else}
StrCpy $PathLaTeX "$PathLaTeX\miktex\bin"
${EndIf}
${EndIf}
${If} $PathLatex == ""
ClearErrors
${WordFind2X} $CommandLineOutput "UserInstall: " "$\r" "E+1" $PathLaTeX
${If} ${Errors}
StrCpy $PathLaTeX ""
${Else}
StrCpy $PathLaTeX "$PathLaTeX\miktex\bin"
${EndIf}
${EndIf}
# Local root
ClearErrors
${WordFind2X} $CommandLineOutput "CommonData: " "$\r" "E+1" $PathLaTeXLocal
${If} ${Errors}
StrCpy $PathLaTeXLocal ""
${EndIf}
${If} $PathLatex == ""
ClearErrors
${WordFind2X} $CommandLineOutput "UserData: " "$\r" "E+1" $PathLaTeXLocal
${If} ${Errors}
StrCpy $PathLaTeXLocal ""
${EndIf}
${EndIf}
!macroend
Function SearchLaTeX
@ -67,14 +87,6 @@ Function SearchLaTeX
# Search where MikTeX is installed
!insertmacro SEARCH_MIKTEX25
${IfNot} ${FileExists} "$PathLaTeX\${BIN_LATEX}"
!insertmacro SEARCH_MIKTEX24 HKCU
${EndIf}
${IfNot} ${FileExists} "$PathLaTeX\${BIN_LATEX}"
!insertmacro SEARCH_MIKTEX24 HKLM
${EndIf}
${IfNot} ${FileExists} "$PathLaTeX\${BIN_LATEX}"
StrCpy $PathLateX ""
@ -82,98 +94,6 @@ Function SearchLaTeX
FunctionEnd
#--------------------------------
# Ghostscript
!ifndef BUNDLE_GHOSTSCRIPT
!insertmacro GetParent
!insertmacro VersionCompare
Var Counter
Var EnumReturn
Var CompareReturn
Var AFPLVersion
Var GPLVersion
Function SearchGhostscript
# Search where Ghostscript is installed
# Find the latest version of AFPL Ghostscript installed
StrCpy $Counter 0
${do}
EnumRegKey $EnumReturn HKLM "Software\AFPL Ghostscript" $Counter
${If} $EnumReturn != ""
${VersionCompare} $EnumReturn $AFPLVersion $CompareReturn
${If} $CompareReturn == "1"
StrCpy $AFPLVersion $EnumReturn
${EndIf}
IntOp $Counter $Counter + 1
${EndIf}
${loopuntil} $EnumReturn == ""
# The same for GPL Ghostscript
StrCpy $Counter 0
${do}
EnumRegKey $EnumReturn HKLM "Software\GPL Ghostscript" $Counter
${If} $EnumReturn != ""
${VersionCompare} $EnumReturn $GPLVersion $CompareReturn
${If} $CompareReturn == "1"
StrCpy $GPLVersion $EnumReturn
${EndIf}
IntOp $Counter $Counter + 1
${EndIf}
${loopuntil} $EnumReturn == ""
# Take the latest one
${VersionCompare} $AFPLVersion $GPLVersion $CompareReturn
${If} $CompareReturn = 1
# AFPL is newer
ReadRegStr $PathGhostscript HKLM "Software\AFPL Ghostscript\$R3" "GS_DLL"
${Else}
# GPL is newer or equal
ReadRegStr $PathGhostscript HKLM "Software\GPL Ghostscript\$R4" "GS_DLL"
${EndIf}
# Trim the DLL filename to get the path
${GetParent} $PathGhostscript $PathGhostscript
${IfNot} ${FileExists} "$PathGhostscript\${BIN_GHOSTSCRIPT}"
StrCpy $PathGhostscript ""
${EndIf}
FunctionEnd
!endif
#--------------------------------
# ImageMagick
!ifndef BUNDLE_IMAGEMAGICK
Function SearchImageMagick
# Search where ImageMagick is installed
ReadRegStr $PathImageMagick HKLM "Software\ImageMagick\Current" "BinPath"
${IfNot} ${FileExists} "$PathImageMagick\${BIN_IMAGEMAGICK}"
StrCpy $PathImageMagick ""
${EndIf}
FunctionEnd
!endif
#--------------------------------

View File

@ -28,16 +28,19 @@ Lists of files to include in the installer
!macroend
!macro FileListMSVCBin COMMAND DIRECTORY
!macro FileListMSVC2008 COMMAND DIRECTORY
${FILE}Microsoft.VC90.CRT.manifest"
${FILE}msvcr90.dll"
${FILE}msvcp90.dll"
!macroend
!macro FileListMSVCManifest COMMAND DIRECTORY
!macro FileListMSVC COMMAND DIRECTORY
${FILE}\Microsoft.VC90.CRT.manifest"
# Manifest not needed for 2010
${FILE}msvcr100.dll"
${FILE}msvcp100.dll"
!macroend
@ -47,7 +50,7 @@ Lists of files to include in the installer
${FILE}intl.dll"
${FILE}aspell.dll"
${FILE}Aiksaurus.dll"
${FILE}zlib1.dll"
${FILE}zlibwapi.dll"
!macroend

View File

@ -44,7 +44,6 @@ Page custom PageExternalImageMagick PageExternalImageMagickValidate
!ifndef BUNDLE_GHOSTSCRIPT
Page custom PageExternalGhostscript PageExternalGhostscriptValidate
!endif
Page custom PageLanguage PageLanguageValidate
!define MUI_PAGE_HEADER_TEXT $(TEXT_DICT_TITLE)
!define MUI_PAGE_HEADER_SUBTEXT $(TEXT_DICT_SUBTITLE)

View File

@ -8,24 +8,11 @@ Variables that are shared between multiple files
Var PathLaTeX
Var PathLaTeXLocal
Var PathImageMagick
Var PathGhostscript
Var PathBibTeXEditor
Var SetupLaTeX
Var SizeLaTeX
!ifndef BUNDLE_IMAGEMAGICK
Var SetupImageMagick
Var SizeImageMagick
!endif
!ifndef BUNDLE_GHOSTSCRIPT
Var SetupGhostscript
Var SizeGhostscript
!endif
Var LangName
Var LangISOCode
Var PrinterConf

View File

@ -46,7 +46,6 @@ Licence details for all installer scripts can be found in the file COPYING
# User interface (wizard pages)
!include gui\external.nsh
!include gui\langselect.nsh
!include gui\reinstall.nsh
#--------------------------------

View File

@ -6,12 +6,6 @@ These typically need to be modified for each LyX release
*/
#--------------------------------
# Windows version on which the complier is running
!define COMPILER_OS VISTA
#!define COMPILER_OS XP
#--------------------------------
# Version number
@ -33,27 +27,11 @@ These typically need to be modified for each LyX release
!ifndef BundleExeFile
!define /date BundleExeFile "LyX-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}svn-%Y%m%d-Installer-Bundle.exe"
!endif
!ifndef MinimalExeFile
!define /date MinimalExeFile "LyX-${APP_VERSION_MAJOR}${APP_VERSION_MINOR}svn-%Y%m%d-Installer-Minimal.exe"
!endif
#--------------------------------
# File names of component installers
!define SETUPFILE_LATEX "basic-miktex-2.7.3248.exe"
!define SETUPFILE_IMAGEMAGEMAGICK "ImageMagick-6.4.1-0-Q16-windows-dll.exe"
!define SETUPFILE_GHOSTSCRIPT "gs861w32.exe"
#--------------------------------
# Download size of components (in KB)
!define SIZE_DOWNLOAD_LATEX 78493
!define SIZE_DOWNLOAD_IMAGEMAGICK 8565
!define SIZE_DOWNLOAD_GHOSTSCRIPT 12469
#--------------------------------
# Approximations of space required for components (in KB)
# MiKTeX
# Sizes in KB
!define SETUPFILE_LATEX "basic-miktex-2.8.3761.exe"
!define SIZE_DOWNLOAD_LATEX 113291
!define SIZE_LATEX 225000
!define SIZE_IMAGEMAGICK 34500
!define SIZE_GHOSTSCRIPT 31500

View File

@ -121,9 +121,6 @@ Section -Configure
FileClose $DistFile
# Set language
WriteRegStr SHELL_CONTEXT ${APP_REGKEY_SETTINGS} "Language" $LangISOCode
SectionEnd
#--------------------------------

View File

@ -29,6 +29,7 @@ Section -ProgramFiles SecProgramFiles
RMDir /r "$INSTDIR\ghostscript\lib"
RMDir /r "$INSTDIR\ghostscript\fonts"
RMDir /r "$INSTDIR\imagemagick"
Delete "$INSTDIR\bin\zlib1.dll"
# Binaries
SetOutPath "$INSTDIR\bin"
@ -36,8 +37,8 @@ Section -ProgramFiles SecProgramFiles
!insertmacro FileListLyXLauncher File "${FILES_LAUNCHER}\"
!insertmacro FileListQtBin File "${FILES_QT}\bin\"
!insertmacro FileListDll File "${FILES_DEPS}\bin\"
!insertmacro FileListMSVCBin File "${FILES_MSVC}\"
!insertmacro FileListMSVCManifest File "..\"
!insertmacro FileListMSVC File "${FILES_MSVC}\"
!insertmacro FileListMSVC2008 File "${FILES_MSVC}\"
!insertmacro FileListNetpbmBin File "${FILES_NETPBM}\"
!insertmacro FileListDTLBin File "${FILES_DTL}\"
!insertmacro FileListDvipostBin File "${FILES_DVIPOST}\"
@ -55,8 +56,7 @@ Section -ProgramFiles SecProgramFiles
# Components of Python
SetOutPath "$INSTDIR\python"
!insertmacro FileListPythonBin File "${FILES_PYTHON}\"
!insertmacro FileListMSVCBin File "${FILES_MSVC}\"
!insertmacro FileListMSVCManifest File "..\"
!insertmacro FileListMSVC File "${FILES_MSVC}\"
SetOutPath "$INSTDIR\python\Lib"
!insertmacro FileListPythonLib File "${FILES_PYTHON}\Lib\"
SetOutPath "$INSTDIR\python\Lib\encodings"
@ -74,22 +74,15 @@ Section -ProgramFiles SecProgramFiles
Pop $PythonCompileReturn # Return value
Delete "$INSTDIR\compilepy.py"
!ifdef BUNDLE_IMAGEMAGICK
# Components of ImageMagick
SetOutPath "$INSTDIR\imagemagick"
!insertmacro FileListImageMagick File "${FILES_IMAGEMAGICK}\"
!insertmacro FileListMSVCBin File "${FILES_MSVC}\"
!insertmacro FileListMSVCManifest File "..\"
!endif
!insertmacro FileListMSVC File "${FILES_MSVC}\"
!ifdef BUNDLE_GHOSTSCRIPT
# Components of Ghostscript
SetOutPath "$INSTDIR\ghostscript"
!insertmacro FileListGhostscript File "${FILES_GHOSTSCRIPT}\"
!insertmacro FileListMSVCBin File "${FILES_MSVC}\"
!insertmacro FileListMSVCManifest File "..\"
!endif
!insertmacro FileListMSVC File "${FILES_MSVC}\"
# Aspell
@ -303,22 +296,6 @@ Section -LaTeX ExternalLaTeX
!insertmacro EXTERNAL LaTeX
SectionEnd
!ifndef BUNDLE_IMAGEMAGICK
Section -ImageMagick ExternalImageMagick
!insertmacro EXTERNAL ImageMagick
SectionEnd
!endif
!ifndef BUNDLE_GHOSTSCRIPT
Section -Ghostscript ExternalGhostscript
!insertmacro EXTERNAL Ghostscript
SectionEnd
!endif
Function InitExternal
# Get sizes of external component installers

View File

@ -15,8 +15,8 @@ Section "un.Program Files" un.SecProgramFiles
!insertmacro FileListLyXLauncher Delete "$INSTDIR\bin\"
!insertmacro FileListQtBin Delete "$INSTDIR\bin\"
!insertmacro FileListDll Delete "$INSTDIR\bin\"
!insertmacro FileListMSVCBin Delete "$INSTDIR\bin\"
!insertmacro FileListMSVCManifest Delete "$INSTDIR\bin\"
!insertmacro FileListMSVC Delete "$INSTDIR\bin\"
!insertmacro FileListMSVC2008 Delete "$INSTDIR\bin\"
!insertmacro FileListNetpbmBin Delete "$INSTDIR\bin\"
!insertmacro FileListDTLBin Delete "$INSTDIR\bin\"
!insertmacro FileListDvipostBin Delete "$INSTDIR\bin\"
@ -38,20 +38,17 @@ Section "un.Program Files" un.SecProgramFiles
Delete "$INSTDIR\python\Lib\*.pyc"
RMDir "$INSTDIR\python\Lib"
!insertmacro FileListPythonBin Delete "$INSTDIR\python\"
!insertmacro FileListMSVCBin Delete "$INSTDIR\python\"
!insertmacro FileListMSVCManifest Delete "$INSTDIR\python\"
!insertmacro FileListMSVC Delete "$INSTDIR\python\"
RMDir "$INSTDIR\python"
# Components of ImageMagick
!insertmacro FileListImageMagick Delete "$INSTDIR\imagemagick\"
!insertmacro FileListMSVCBin Delete "$INSTDIR\imagemagick\"
!insertmacro FileListMSVCManifest Delete "$INSTDIR\imagemagick\"
!insertmacro FileListMSVC Delete "$INSTDIR\imagemagick\"
RMDir "$INSTDIR\imagemagick"
# Components of Ghostscript
!insertmacro FileListGhostscript Delete "$INSTDIR\ghostscript\"
!insertmacro FileListMSVCBin Delete "$INSTDIR\ghostscript\"
!insertmacro FileListMSVCManifest Delete "$INSTDIR\ghostscript\"
!insertmacro FileListMSVC Delete "$INSTDIR\ghostscript\"
RMDir "$INSTDIR\ghostscript"
# Aiksaurus Data