Table of Contents

LibreOffice (3.4)

Tested with opsi 4.0.1
requiredWinstVersion >= 4.10.8.6
For 32 Bit
Installationfiles are available at: http://de.libreoffice.org/

By Jeromy 2012/01/16 21:48

Tree:

<dir> readmes
<dir> redist
delsub.ins
libreoffice34.jpg
lbreoffice34.cab
libreoffice34.msi
install.ins
uninstall.ins

Steps

  1. Download the installation-file from the website above. You better get the “…JRE_…”-version.
  2. Doubleclick the downloaded version, but don't install it. We only need the contents of the temp-directory, where the install-files are stored.
  3. During the starting installation you will be asked where so save the installation files. Better choose “Desktop”, if possible.
  4. Copy all files except “setup.exe” and “setup.ini” from “LibreOffice.org 3.4 (yourlanguage) Installation Files” to the CLIENT_DATA-directory
  5. Delete all unnecessary “trans”.mst-Files (all expect your own language)

install.ins

*********************************************************************; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib
; and published under the Terms of the General Public License.
 
*********************************************************************; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib
; and published under the Terms of the General Public License.
 
[Initial]
; Set log level
LogLevel = 2
; Log Errors in logfile but don't abort
ExitOnError = false
; Show syntax errors in the script
ScriptErrorMessages = on
; Dont trace step by step through the script
TraceMode = off
; Started programs should run in front of the winst window
StayOnTop = false
 
[Aktionen]
; Define general vars
DefVar $SYSTEMDRIVE$
DefVar $SYSTEMROOT$
DefVar $TEMP$
DefVar $OS$
 
; Define product specific vars
DefVar $ProductId$
DefVar $InstallDir$
DefVar $NewExe$
DefVar $InstLogfile$
DefVar $UninstallCommand$
DefVar $MsiCode$
DefVar $DisplayName$
DefVar $UserProfileName$
DefStringList $UserProfileNames$
DefVar $AppDataDirName$
 
; Define product property specific vars
DefVar $RemoveOOo2$
 
DefVar $REGISTER_ALL_MSO_TYPES$
DefVar $REGISTER_NO_MSO_TYPES$
DefVar $REGISTER_WORD_DOC$
DefVar $REGISTER_WORD_DOCX$
DefVar $REGISTER_WORD_DOCM$
DefVar $REGISTER_WORD_DOT$
DefVar $REGISTER_WORD_DOTX$
DefVar $REGISTER_WORD_DOTM$
DefVar $REGISTER_WORD_RTF$
DefVar $REGISTER_EXCEL_XLS$
DefVar $REGISTER_EXCEL_XLSX$
DefVar $REGISTER_EXCEL_XLSM$
DefVar $REGISTER_EXCEL_XLSB$
DefVar $REGISTER_EXCEL_XLAM$
DefVar $REGISTER_EXCEL_XLT$
DefVar $REGISTER_EXCEL_XLTX$
DefVar $REGISTER_EXCEL_XLTM$
DefVar $REGISTER_POWERPOINT_PPS$
DefVar $REGISTER_POWERPOINT_PPSX$
DefVar $REGISTER_POWERPOINT_PPSM$
DefVar $REGISTER_POWERPOINT_PPAM$
DefVar $REGISTER_POWERPOINT_PPT$
DefVar $REGISTER_POWERPOINT_PPTX$
DefVar $REGISTER_POWERPOINT_PPTM$
DefVar $REGISTER_POWERPOINT_POT$
DefVar $REGISTER_POWERPOINT_POTX$
DefVar $REGISTER_POWERPOINT_POTM$
DefVar $REGISTER_OPTIONS$
 
; Set general vars
Set $SYSTEMDRIVE$ = "%SYSTEMDRIVE%"
Set $SYSTEMROOT$ = "%SYSTEMROOT%"
Set $TEMP$ = EnvVar("TEMP")
Set $OS$ = GetOS
Set $AppDataDirName$ = TakeString(-1, SplitString("%CommonAppdataDir%", "\"))
 
; Set product specific vars
Set $ProductId$ = "ooffice3"
Set $InstallDir$ = "%ProgramFilesDir%\LibreOffice 3.4"
Set $NewExe$ = $InstallDir$ + "\program\soffice.exe"
Set $InstLogfile$ = "%SYSTEMDRIVE%\tmp\loffice3_install_log.txt"
 
; Set product property specific vars
Set $RemoveOOo2$ = inivar("remove_ooo2")
 
Set $REGISTER_WORD_DOC$  = "0"
Set $REGISTER_WORD_DOCX$ = "0"
Set $REGISTER_WORD_DOCM$ = "0"
Set $REGISTER_WORD_DOT$  = "0"
Set $REGISTER_WORD_DOTX$ = "0"
Set $REGISTER_WORD_DOTM$ = "0"
Set $REGISTER_WORD_RTF$  = "0"
Set $REGISTER_EXCEL_XLS$  = "0"
Set $REGISTER_EXCEL_XLSX$ = "0"
Set $REGISTER_EXCEL_XLSM$ = "0"
Set $REGISTER_EXCEL_XLSB$ = "0"
Set $REGISTER_EXCEL_XLAM$ = "0"
Set $REGISTER_EXCEL_XLT$  = "0"
Set $REGISTER_EXCEL_XLTX$ = "0"
Set $REGISTER_EXCEL_XLTM$ = "0"
Set $REGISTER_POWERPOINT_PPS$  = "0"
Set $REGISTER_POWERPOINT_PPSX$ = "0"
Set $REGISTER_POWERPOINT_PPSM$ = "0"
Set $REGISTER_POWERPOINT_PPAM$ = "0"
Set $REGISTER_POWERPOINT_PPT$  = "0"
Set $REGISTER_POWERPOINT_PPTX$ = "0"
Set $REGISTER_POWERPOINT_PPTM$ = "0"
Set $REGISTER_POWERPOINT_POT$  = "0"
Set $REGISTER_POWERPOINT_POTX$ = "0"
Set $REGISTER_POWERPOINT_POTM$ = "0"
 
if inivar("handle_word_doc") = "on"
        Set $REGISTER_WORD_DOC$  = "1"
        Set $REGISTER_WORD_DOCX$ = "1"
        Set $REGISTER_WORD_DOCM$ = "1"
        Set $REGISTER_WORD_DOT$  = "1"
        Set $REGISTER_WORD_DOTX$ = "1"
        Set $REGISTER_WORD_DOTM$ = "1"
        Set $REGISTER_WORD_RTF$  = "1"
endif
if inivar("handle_excel_xls") = "on"
        Set $REGISTER_EXCEL_XLS$  = "1"
        Set $REGISTER_EXCEL_XLSX$ = "1"
        Set $REGISTER_EXCEL_XLSM$ = "1"
        Set $REGISTER_EXCEL_XLSB$ = "1"
        Set $REGISTER_EXCEL_XLAM$ = "1"
        Set $REGISTER_EXCEL_XLT$  = "1"
        Set $REGISTER_EXCEL_XLTX$ = "1"
        Set $REGISTER_EXCEL_XLTM$ = "1"
endif
if inivar("handle_powerpoint_ppt") = "on"
        Set $REGISTER_POWERPOINT_PPS$  = "1"
        Set $REGISTER_POWERPOINT_PPSX$ = "1"
        Set $REGISTER_POWERPOINT_PPSM$ = "1"
        Set $REGISTER_POWERPOINT_PPAM$ = "1"
        Set $REGISTER_POWERPOINT_PPT$  = "1"
        Set $REGISTER_POWERPOINT_PPTX$ = "1"
        Set $REGISTER_POWERPOINT_PPTM$ = "1"
        Set $REGISTER_POWERPOINT_POT$  = "1"
        Set $REGISTER_POWERPOINT_POTX$ = "1"
        Set $REGISTER_POWERPOINT_POTM$ = "1"
endif
 
Set $REGISTER_OPTIONS$ = "REGISTER_ALL_MSO_TYPES=0 REGISTER_NO_MSO_TYPES=1"
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_DOC="  +  $REGISTER_WORD_DOC$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_DOCX=" +  $REGISTER_WORD_DOCX$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_DOCM=" +  $REGISTER_WORD_DOCM$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_DOT="  +  $REGISTER_WORD_DOT$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_DOTX=" +  $REGISTER_WORD_DOTX$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_DOTM=" +  $REGISTER_WORD_DOTM$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_RTF="  +  $REGISTER_WORD_RTF$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_XLS="  +  $REGISTER_EXCEL_XLS$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_XLSX=" +  $REGISTER_EXCEL_XLSX$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_XLSM=" +  $REGISTER_EXCEL_XLSM$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_XLSB=" +  $REGISTER_EXCEL_XLSB$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_XLAM=" +  $REGISTER_EXCEL_XLAM$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_XLT="  +  $REGISTER_EXCEL_XLT$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_XLTX=" +  $REGISTER_EXCEL_XLTX$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_XLTM=" +  $REGISTER_EXCEL_XLTM$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_PPS="  +  $REGISTER_POWERPOINT_PPS$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_PPSX=" +  $REGISTER_POWERPOINT_PPSX$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_PPSM=" +  $REGISTER_POWERPOINT_PPSM$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_PPAM=" +  $REGISTER_POWERPOINT_PPAM$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_PPT="  +  $REGISTER_POWERPOINT_PPT$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_PPTX=" +  $REGISTER_POWERPOINT_PPTX$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_PPTM=" +  $REGISTER_POWERPOINT_PPTM$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_POT="  +  $REGISTER_POWERPOINT_POT$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_POTX=" +  $REGISTER_POWERPOINT_POTX$
Set $REGISTER_OPTIONS$ = $REGISTER_OPTIONS$ + " REGISTER_POTM=" +  $REGISTER_POWERPOINT_POTM$
 
; Show message and logo
Message "installiere LibreOffice 3.4"
ShowBitmap /3 "%scriptpath%\libreoffice34.jpg" "Libre Office 3.4"
 
; Check requirements
if not ( $OS$ = "Windows_NT" or $OS$ = "Windows_95" )
        LogError "Refusing install on os " + $OS$
        isFatalError
endif
 
if not ( HasMinimumSpace("%SYSTEMDRIVE%", "400 MB") )
        LogError "Not enough free disk space on drive c:"
        isFatalError
endif
 
; Uninstall first
;if FileExists("%ScriptPath%\delsub.ins")
;       sub "%ScriptPath%\delsub.ins"
;endif
 
; Start installation
Message "installiere LibreOffice.org 3.4"
WinBatch_silent_install
 
 
; Check installation result
if not(FileExists($NewExe$))
        LogError "Fatal: file " + $NewExe$ + " not found after installation"
        isFatalError
endif
 
; Update user profiles
Set $UserProfileNames$ = getOutStreamFromSection('DosInAnIcon_list_profiledir')
for $entry$ in $UserProfileNames$ do Sub_update_user_profile
 
; Customize install
if FileExists("%ScriptPath%\custom_ins_dir\custom_ins.ins")
        sub "%ScriptPath%\custom_ins_dir\custom_ins.ins"
endif
 
 
[WinBatch_silent_install]
;%SCRIPTPATH%\setup\instmsiw.exe /q
msiexec /qb-! /l $InstLogfile$ /norestart /i %SCRIPTPATH%\libreoffice34.msi SETUP_USED=1 ADDLOCAL=All REMOVEOLDPRODUCTS=0 ALLUSERS=2 $REGISTER_OPTIONS$
; /qb-! entfernt!
 
[WinBatch_upgrade]
msiexec /qn /norestart /fvomus %SCRIPTPATH%\libreoffice34.msi
 
[DosInAnIcon_list_profiledir]
@echo off
dir "%ProfileDir%" /b
 
[Files_copy_ooo2_profile]
copy -s "%ProfileDir%\$UserProfileName$\$AppDataDirName$\OpenOffice.org3\user\*" "%ProfileDir%\$UserProfileName$\$AppDataDirName$\LibreOffice\3\user\"
 
[Files_copy_reg]
copy -s "%SCRIPTPATH%\user\registry\data\org\*" "%ProfileDir%\$UserProfileName$\$AppDataDirName$\LibreOffice\3\user\registry\data\org\"
 
[Files_create_ooo3_profile]
copy -s "%SCRIPTPATH%\user\*" "%ProfileDir%\$UserProfileName$\$AppDataDirName$\LibreOffice\3\user\"
 
[Sub_update_user_profile]
Set $UserProfileName$ = "$entry$"
if not ($UserProfileName$ = "") and not ($UserProfileName$ = "All Users")
        if FileExists("%ProfileDir%\" + $UserProfileName$ + "\" + $AppDataDirName$ + "\OpenOffice.org\3\user")
                comment "OOo3 user profile exist for user " + $UserProfileName$ + ", leaving as is"
                Files_copy_reg
        else
                if FileExists("%ProfileDir%\" + $UserProfileName$ + "\" + $AppDataDirName$ + "\OpenOffice.org2\user")
                        comment "Using OOo2 user profile of user " + $UserProfileName$ + " as OOo3 profile"
                        Files_copy_ooo2_profile
                        Files_copy_reg
                else
                        comment "Creating new OOo3 profile for user " + $UserProfileName$
                        Files_create_ooo3_profile
                endif
        endif
endif

uninstall.ins

; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib
; and published under the Terms of the General Public License.
 
[Initial]
; Set log level
LogLevel = 9
; Log Errors in logfile but don't abort
ExitOnError = false
; Show syntax errors in the script
ScriptErrorMessages = on
; Dont trace step by step through the script
TraceMode = off
; Started programs should run in front of the winst window
StayOnTop = false
 
[Aktionen]
DefVar $TEMP$
DefVar $OS$
 
DefVar $ProductId$
DefVar $InstallDir$
DefVar $UninstallCommand$
DefVar $MsiCode$
DefVar $DisplayName$
DefVar $RemoveOOo2$
DefVar $RebootFlag$
 
Set $TEMP$ = EnvVar("TEMP")
Set $OS$ = GetOS
 
Set $ProductId$ = "loffice34"
Set $InstallDir$ = "%ProgramFilesDir%\LibreOffice 3.4"
 
Set $RemoveOOo2$ = inivar("remove_ooo2")
 
if not ( $OS$ = "Windows_NT" or $OS$ = "Windows_95" )
        LogError "Refusing uninstall on os " + $OS$
        isFatalError
endif
 
ShowBitmap /3 "%scriptpath%\libreoffice.png" "LibreOffice 3.4"
 
if FileExists("%ScriptPath%\delsub.ins")
        ; Start uninstall
        sub "%ScriptPath%\delsub.ins"
endif
 
ExitWindows /Reboot

delsub.ins

; Copyright (c) uib gmbh (www.uib.de)
; This sourcecode is owned by uib
; and published under the Terms of the General Public License.
 
Message "Deinstalliere OpenOffice.org"
 
if ( $RemoveOOo2$ = "true" )
        ; OOo 2.1.0
        Set $MsiCode$ ="{8FB1A5EA-7DA8-4D57-80FB-BD923CCCC852}"
        Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
        if not ($DisplayName$ = "")
                Message "Found "+$DisplayName$+" => uninstalling first"
                Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
                Winbatch_uninstall
                killtask "iexplore.exe"
                Files_delete_oo2
        endif
 
        ; OOo 2.2.0
        Set $MsiCode$ ="{E7DA9B23-5715-45D8-965E-E76688A2B948}"
        Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
        if not ($DisplayName$ = "")
                Message "Found "+$DisplayName$+" => uninstalling first"
                Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
                Winbatch_uninstall
                killtask "iexplore.exe"
                Files_delete_oo2
        endif
 
        ; OOo 2.2.1
        Set $MsiCode$ ="{E4C7B3EF-B3DB-4BB6-A812-E8FAE47534D3}"
        Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
        if not ($DisplayName$ = "")
                Message "Found "+$DisplayName$+" => uninstalling first"
                Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
                Winbatch_uninstall
                killtask "iexplore.exe"
                Files_delete_oo2
        endif
 
        ; OOo 2.3.0
        Set $MsiCode$ ="{A625D45F-1DC4-47FB-ABCF-6B27684AA717}"
        Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
        if not ($DisplayName$ = "")
                Message "Found "+$DisplayName$+" => uninstalling first"
                Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
                Winbatch_uninstall
                killtask "iexplore.exe"
                Files_delete_oo2
        endif
 
        ; OOo 2.3.1
        Set $MsiCode$ ="{DD5B65F7-7CA5-4DE4-AEE7-7E8F26BF78F5}"
        Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
        if not ($DisplayName$ = "")
                Message "Found "+$DisplayName$+" => uninstalling first"
                Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
                Winbatch_uninstall
                killtask "iexplore.exe"
                Files_delete_oo2
        endif
 
        ; OOo 2.4.0
        Set $MsiCode$ ="{1B14B0C3-2D60-477C-A1FE-B88E60948854}"
        Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
        if not ($DisplayName$ = "")
                Message "Found "+$DisplayName$+" => uninstalling first"
                Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
                Winbatch_uninstall
                killtask "iexplore.exe"
                Files_delete_oo2
        endif
 
        ; OOo 2.4.1
        Set $MsiCode$ = "{CCD90636-D97D-4130-A44A-3AD4E63B9220}"
        Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
        if not ($DisplayName$ = "")
                Message "Found "+$DisplayName$+" => uninstalling first"
                Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
                Winbatch_uninstall
                killtask "iexplore.exe"
                Files_delete_oo2
        endif
 
        ; ooo2.4.2
        set $MsiCode$="{50E21B3A-FF06-412D-879B-DEA30815736E}"
        set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
        if not ($DisplayName$ = "")
                Message "Found "+$DisplayName$+" => uninstalling first"
                set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
                Winbatch_uninstall
                killtask "iexplore.exe"
                Files_delete_oo2
        endif
 
        LinkFolder_delete_OpenOffice.org_2
 
endif
 
; OOo 3.0.9358
Set $MsiCode$ = "{04B45310-A5FE-4425-BFCA-1A6D8920DE74}"
Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
if not ($DisplayName$ = "")
        Message "Found "+$DisplayName$+" => uninstalling first"
        Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
        Winbatch_uninstall
        killtask "iexplore.exe"
        Files_delete_oo3
endif
 
; OOo 3.0.1
Set $MsiCode$ = "{7EC19307-7C22-47A8-922B-3FA965291260}"
Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
if not ($DisplayName$ = "")
        Message "Found "+$DisplayName$+" => uninstalling first"
        Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
        Winbatch_uninstall
        killtask "iexplore.exe"
        Files_delete_oo3
endif
 
; OOo 3.1
Set $MsiCode$ = "{D765F1CE-5AE5-4C47-B134-AE58AC474740}"
Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
if not ($DisplayName$ = "")
        Message "Found "+$DisplayName$+" => uninstalling first"
        Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
        Winbatch_uninstall
        killtask "iexplore.exe"
        Files_delete_oo3
endif
 
; OOo 3.2
Set $MsiCode$ = "{2217B0B4-35CB-48C6-B640-864DF2F30F99}"
Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
if not ($DisplayName$ = "")
        Message "Found "+$DisplayName$+" => uninstalling first"
        Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
        Winbatch_uninstall
        killtask "iexplore.exe"
        Files_delete_oo3
endif
 
; OOo 3.2.1
Set $MsiCode$ = "{8D1E61D1-1395-4E97-997F-D002DB3A5074}"
Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
if not ($DisplayName$ = "")
        Message "Found "+$DisplayName$+" => uninstalling first"
        Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
        Winbatch_uninstall
        killtask "iexplore.exe"
        Files_delete_oo3
endif
 
; OOo 3.3
Set $MsiCode$ = "{4286716B-1287-48E7-9078-3DC8248DBA96}"
Set $DisplayName$ = GetRegistryStringValue ("[HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"+$MsiCode$+"] DisplayName")
if not ($DisplayName$ = "")
        Message "Found "+$DisplayName$+" => uninstalling first"
        Set $UninstallCommand$ = "MsiExec.exe /x "+$MsiCode$+" /qb-! REBOOT=ReallySuppress"
        Winbatch_uninstall
        killtask "iexplore.exe"
        Files_delete_oo3
endif
 
 
LinkFolder_delete_OpenOffice.org_3
 
 
[WinBatch_uninstall]
$UninstallCommand$
 
[LinkFolder_delete_OpenOffice.org_2]
set_basefolder common_programs
delete_subfolder "OpenOffice.org 1.9.125"
delete_subfolder "OpenOffice.org2.0beta"
delete_subfolder "OpenOffice.org 2.0"
delete_subfolder "OpenOffice.org 2.1"
delete_subfolder "OpenOffice.org 2.2"
delete_subfolder "OpenOffice.org 2.3"
delete_subfolder "OpenOffice.org 2.4"
 
[Files_delete_oo2]
delete -sf "%ProgramFilesDir%\OpenOffice.org 2.0"
delete -sf "%ProgramFilesDir%\OpenOffice.org 2.1"
delete -sf "%ProgramFilesDir%\OpenOffice.org 2.2"
delete -sf "%ProgramFilesDir%\OpenOffice.org 2.3"
delete -sf "%ProgramFilesDir%\OpenOffice.org 2.4"
 
[Files_delete_oo3]
delete -sf "%ProgramFilesDir%\OpenOffice.org 3"
 
[LinkFolder_delete_OpenOffice.org_3]
set_basefolder common_programs
delete_subfolder "OpenOffice.org 3.3"