Difference between revisions of "OpenOffice.org 2.x"

From WPKG | Open Source Software Deployment and Distribution
Jump to: navigation, search
m
m (Added to new category OpenOffice)
 
(32 intermediate revisions by 18 users not shown)
Line 1: Line 1:
== Basics ==
+
This is a silent installer and uninstaller for OpenOffice.
  
First, download OOo_2.0_Win32Intel_install.exe from [http://download.openoffice.org/index.html OpenOffice.org] Website.<br>
+
== Disabling the First Start Wizard ==
Execute the downloaded installer - it creates a directory named ''OpenOfficeorg 2.0 Installation Files'', which includes several files.
+
 
 +
=== Setup.xcu Method ===
 +
 
 +
Create a user's OpenOffice profile directory (%APPDATA%\OpenOffice.org2\user\registry\data\org\openoffice) and copy the following file (Setup.xcu) there before they run OpenOffice. Then when they run OpenOffice they won't be prompted to complete the Start Wizard.
 +
 
 +
<source lang="xml">
 +
<?xml version="1.0" encoding="UTF-8"?>
 +
<oor:component-data xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" oor:name="Setup" oor:package="org.openoffice">
 +
<node oor:name="Office">
 +
  <prop oor:name="LicenseAcceptDate" oor:type="xs:string">
 +
  <value>2010-01-01T11:51:13</value>
 +
  </prop>
 +
  <prop oor:name="FirstStartWizardCompleted" oor:type="xs:boolean">
 +
  <value>true</value>
 +
  </prop>
 +
</node>
 +
</oor:component-data>
 +
</source>
 +
 
 +
=== DisableFirstStartWzd.oxt + Common.xcu Extension Method ===
 +
 
 +
First, download the OpenOffice.org installer (OOo_2.4.1_Win32Intel_install_en-US.exe) from [http://download.openoffice.org/other.html OpenOffice.org] Website.  Make sure to uncheck "Include the Java JRE with this download" to download the package without the bundled JRE.<br>
 +
Run the installer - it creates a directory named ''OpenOffice.org 2.4 (en-US) Installation Files'', which includes several files.
 
The ones you need are:
 
The ones you need are:
  
  openofficeorg1.cab
+
  openofficeorg24.msi
  openofficeorg2.cab
+
openoffice.org-activex.cab
  openofficeorg20.msi
+
  openoffice.org-base.cab
  openofficeorg3.cab
+
  openoffice.org-calc.cab
  openofficeorg4.cab
+
  openoffice.org-core01.cab
 +
  openoffice.org-core02.cab
 +
openoffice.org-core03.cab
 +
openoffice.org-core04.cab
 +
openoffice.org-core05.cab
 +
openoffice.org-core06.cab
 +
openoffice.org-core07.cab
 +
openoffice.org-core08.cab
 +
openoffice.org-core09.cab
 +
openoffice.org-draw.cab
 +
openoffice.org-emailmerge.cab
 +
openoffice.org-graphicfilter.cab
 +
openoffice.org-impress.cab
 +
openoffice.org-javafilter.cab
 +
openoffice.org-math.cab
 +
openoffice.org-onlineupdate.cab
 +
openoffice.org-pyuno.cab
 +
openoffice.org-testtool.cab
 +
openoffice.org-writer.cab
 +
openoffice.org-xsltfilter.cab
  
''
+
Next, you need to download the [http://wiki.services.openoffice.org/wiki/Documentation/Administration_Guide/Deactivating_Registration_Wizard DisableFirstStartWzd.oxt] extension and place this in the same directory as the files above.
excerpt from ''package.xml'', adjust your paths accordingly:
+
<package id="ooo-2.x"
+
  name="OpenOffice.org 2.x"
+
  revision="1"
+
  reboot="false"
+
  priority="0">
+
  <check type="uninstall" condition="exists" path="OpenOffice.org 2.0" />
+
  <install cmd='msiexec /qn /i "%SOFTWARE%\OOo_2.0\openofficeorg20.msi" ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1' />
+
  <upgrade cmd='msiexec /qn /i "%SOFTWARE%\OOo_2.0\openofficeorg20.msi" ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1' />
+
  <remove cmd='msiexec /qn /x{CE91484F-B0CF-4494-8BA6-7242EE913626}' />
+
  
</package>
+
For some reason, using this extension alone won't work in OpenOffice 2.4.1 (untested in 2.4.0). The Wizard will still come up, although in a smaller version (skipping the first steps, going directly to the "Register now/Register later" dialog.
 +
Run OpenOffice once and go through the dialog, that way it will create a user profile in %APPDATA%. Then you will need to copy the file %APPDATA%OpenOffice.org2\user\registry\data\org\openoffice\Office\Common.xcu to the same directory as all the other files.
  
  
The uninstall ID can be checked from the file ''setup.ini'' in the directory ''OpenOfficeorg 2.0 Installation Files''
+
== Installer Parameters ==
  
''Question'' Does "uninstall ID" mean "{CE91484F-B0CF-4494-8BA6-7242EE913626}" or "OpenOffice.org 2.0"?
+
You can customize your installation by using the following supported installer parameters: http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Automatic_Installation_on_Windows
  
== Localized builds ==
 
  
The best way to install a localized build (in my opinion) is to also install localized language pack. Then the user can choose if he wants to have the English interface or the localized one. An example for Estonian language pack:
+
== WPKG install ==
<!--<blockquote style="background: white; border: 1px solid black; padding: 1em;">-->
+
 
<pre>
+
For security reasons you are strongly encouraged to upgrade to version 2.4.2: http://www.openoffice.org/security/cves/CVE-2008-2237.html, http://www.openoffice.org/security/cves/CVE-2008-2238.html.
<package id="ooo-2.x-et"  
+
 
name="OpenOffice.org 2.0 Language Pack (Eesti)"  
+
The following installer is for English version, without bundled JRE, and associates as default application for Word, Excel and Powerpoint file extensions.
revision="1"  
+
 
reboot="false"  
+
<source lang="xml">
priority="0">
+
<?xml version="1.0" encoding="UTF-8"?>
<check type="uninstall" condition="exists" path="OpenOffice.org 2.0 Language Pack (Eesti)" />
+
<packages>
<install cmd='"msiexec" /i \\Server\wpkg\pkg\OOo_2.0\langpack_et\openofficeorg20.msi /qn'>
+
<package id="openoffice2"
  <exit code="0" />
+
name="OpenOffice.org 2.4.x"
</install>
+
revision="20081103"
<remove cmd='"msiexec" /x{9F5CAB24-B19E-42FD-AF8D-774C5C36A7FB} /qn' />
+
reboot="false"
<upgrade cmd="" />
+
priority="0">
 +
 
 +
<check type="uninstall" condition="exists" path="OpenOffice.org 2.4" />
 +
<depends package-id="java6" />
 +
 
 +
<install cmd='msiexec /qn /i "%SOFTWARE%\openoffice2\openofficeorg24.msi" ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1' />
 +
<install cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" add --shared %SOFTWARE%\openoffice2\DisableFirstStartWzd.oxt' />
 +
<install cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" add --shared %SOFTWARE%\openoffice2\Common.xcu' />
 +
 
 +
<upgrade cmd='msiexec /qn /i "%SOFTWARE%\openoffice2\openofficeorg24.msi" ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1' />
 +
<upgrade cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" add --shared %SOFTWARE%\openoffice2\DisableFirstStartWzd.oxt' />
 +
<upgrade cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" add --shared %SOFTWARE%\openoffice2\Common.xcu' />
 +
 
 +
<remove cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" remove --shared org.openoffice.legacy.DisableFirstStartWzd.oxt' />
 +
<remove cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" remove --shared org.openoffice.legacy.Common.xcu' />
 +
<remove cmd='msiexec /qn /x {1AE79DA3-6C93-45C5-8318-E440C2A0A73A}' />
 
</package>
 
</package>
</pre>
+
</packages>
<!--</blockquote>-->
+
</source>
  
 +
''Note'' If you install i.e. OOo 2.4.2 it also announces itself as OO 2.4 in the Software repository. To know if it got installed, replace
  
------
+
<source lang="xml"><check type="uninstall" condition="exists" path="OpenOffice.org 2.4" /></source>
User Note: I tried this out and found that it didn't add the short cuts in the start menu... instead it was on the root of C.  So I'm currentily tring
+
"OpenOfficeorg 2.0 Installation Files\setup.exe" /quiet" for the install.  But the above remove scripts seems to work well
+
  
 +
with   
  
----
+
<source lang="xml">
 +
<check type="registry" condition="exists" path="HKLM\SOFTWARE\OpenOffice.org\OpenOffice.org\2.4\{1AE79DA3-6C93-45C5-8318-E440C2A0A73A}\INSTALLLOCATION" />
 +
</source>
  
 +
The long hexnumber is the Uninstall-ID (see below). This always works, also with minorversion updates.
 +
 +
The uninstall ID can be checked from the file ''setup.ini'' in the directory ''OpenOffice.org 2.4 (en-US) Installation Files''
 +
 +
''Question'' Does "uninstall ID" mean "{1AE79DA3-6C93-45C5-8318-E440C2A0A73A}" or "OpenOffice.org 2.0"?
 +
 +
''Answer'' The long hex number.
 +
 +
== Localized builds ==
 +
 +
The best way to install a localized build (in my opinion) is to install localized language packs in addition to the English installer. This way the user can choose if they want to have the English interface or the localized one. An example for the Traditional Chinese language pack:
 +
 +
<source lang="xml">
 +
<package id="ooo-2.4-langpack-zh"
 +
  name="OpenOffice.org 2.4 language pack (zh)"
 +
  revision="1"
 +
  reboot="false"
 +
  priority="0">
 +
  <check type="registry" condition="exists" path="HKLM\SOFTWARE\Microsoft\Window
 +
s\CurrentVersion\Uninstall\{B95154FE-365D-4867-B915-24EEEE6EFB27}\Version" />
 +
  <install cmd='msiexec /qn /i "%SOFTWARE%\ooo-2.4-langpack-zh\openofficeorg24.msi" ALLUSERS=1' />
 +
  <remove cmd='msiexec /qn /x{B95154FE-365D-4867-B915-24EEEE6EFB27}' />
 +
</package>
 +
</source>
 +
 +
Note that {B95154FE-365D-4867-B915-24EEEE6EFB27} is the
 +
product code as found in setup.ini.
 +
 +
To switch to that language, choose Tools | Options |
 +
Language Settings | Language and set the "language
 +
of User Interface".
 +
----
  
 
== Customizing ==
 
== Customizing ==
  
According to the [[http://documentation.openoffice.org/setup_guide2/2.x/en/SETUP_GUIDE.pdf OpenOffice.org 2 setup guide]], you can customize an installation using Microsoft's [[http://support.microsoft.com/default.aspx/kb/255905/EN-US/? Orca]] tool.
+
=== General ===
  
''Question''  Is there an easy way to make OpenOffice.org the default application for Word, Excel, and PowerPoint documents?
+
==== MSI Transform ====
 +
 
 +
According to the [http://documentation.openoffice.org/setup_guide2/2.x/en/SETUP_GUIDE.pdf OpenOffice.org 2 setup guide], you can customize an automated installation using Microsoft's [http://support.microsoft.com/default.aspx/kb/255905/EN-US/? Orca] tool.
 +
 
 +
==== MSI Installer Switches ====
 +
 
 +
Certain customizations are possible without Orca.  For example, [http://www.appdeploy.com/packages/detail.asp?id=497 AppDeploy.com] gives the tip for making OpenOffice.org the default program for Microsoft Office file types:
 +
 
 +
msiexec /qb! /i openofficeorg20.msi ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1
 +
 
 +
See the new documentation [http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Automatic_Installation_on_Windows Automatic Installation on Windows at the OpenOffice.org Wiki] for a detailed documentation of all the MSI properties.
 +
 
 +
==== soffice.ini ====
 +
 
 +
You can edit options in %ProgramFiles%\OpenOffice.org 2.4\program\soffice.ini.
 +
 
 +
For example to disable the splash screen, place ''sed.exe'' and the dependencies (''libiconv2.dll'' and ''libintl3.dll'') from [http://gnuwin32.sourceforge.net/packages/sed.htm GnuWin32] into your tools folder. Then add the following lines to the bottom of each section:
 +
 
 +
<source lang="xml">
 +
<install cmd='%WPKGROOT%\tools\sed.exe -i s/^Logo=1$/Logo=0/ "%ProgramFiles%\OpenOffice.org 2.4\program\soffice.ini"' />
 +
...
 +
<upgrade cmd='%WPKGROOT%\tools\sed.exe -i s/^Logo=1$/Logo=0/ "%ProgramFiles%\OpenOffice.org 2.4\program\soffice.ini"' />
 +
</source>
 +
 
 +
==== Common.xcu ====
 +
 
 +
Alternatively, create a user's OpenOffice profile directory (%APPDATA%\OpenOffice.org2\user\registry\data\org\openoffice) and copy the following file (Common.xcu) there before (or after) they run OpenOffice.
 +
 
 +
Example configuration which will warn when print for paper orientation and size; auto save every 10 minutes; not  AutoCorrect URLs; set the graphics cache's memory per object to 5MB;
 +
set the total graphics cache to use for OpenOffice to 33MB:
 +
 
 +
<source lang="xml">
 +
<?xml version="1.0" encoding="UTF-8"?>
 +
<oor:component-data xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" oor:name="Common" oor:package="org.openoffice.Office">
 +
<node oor:name="Misc">
 +
  <prop oor:name="FirstRun" oor:type="xs:boolean">
 +
  <value>false</value>
 +
  </prop>
 +
</node>
 +
<node oor:name="Print">
 +
  <node oor:name="Warning">
 +
  <prop oor:name="PaperOrientation" oor:type="xs:boolean">
 +
    <value>true</value>
 +
  </prop>
 +
  <prop oor:name="PaperSize" oor:type="xs:boolean">
 +
    <value>true</value>
 +
  </prop>
 +
  </node>
 +
</node>
 +
<node oor:name="Save">
 +
  <node oor:name="Document">
 +
  <prop oor:name="AutoSave" oor:type="xs:boolean">
 +
    <value>true</value>
 +
  </prop>
 +
  <prop oor:name="AutoSaveTimeIntervall" oor:type="xs:int">
 +
    <value>10</value>
 +
  </prop>
 +
  </node>
 +
</node>
 +
<node oor:name="AutoCorrect">
 +
  <prop oor:name="SetInetAttribute" oor:type="xs:boolean">
 +
  <value>false</value>
 +
  </prop>
 +
</node>
 +
<node oor:name="Cache">
 +
  <node oor:name="GraphicManager">
 +
  <prop oor:name="ObjectCacheSize" oor:type="xs:int">
 +
    <value>5242880</value>
 +
  </prop>
 +
  <prop oor:name="TotalCacheSize" oor:type="xs:int">
 +
    <value>33554432</value>
 +
  </prop>
 +
  </node>
 +
</node>
 +
</oor:component-data>
 +
</source>
 +
 
 +
=== Specific Customisations ===
 +
 
 +
TODO
  
 
== Alternative install ==
 
== Alternative install ==
 
Here's another possibility:
 
Here's another possibility:
  
<package id="openoffice" name="Openoffice 2" revision="1" priority="0" reboot="false">
+
<source lang="xml">
  <check type="uninstall" condition="exists" path="OpenOffice.org 1.9.122" />
+
<package id="openoffice" name="Openoffice 2" revision="1" priority="0" reboot="false">
  <!-- install cmd='\\server\share\OpenOffice\enu\setup.exe -r:\\server\share\OpenOffice\officeop.txt -D:\"%ProgramFiles%\OpenOffice.org\" -debug -net' -->
+
  <check type="uninstall" condition="exists" path="OpenOffice.org 2.0" />
<!-- install cmd='c:\perl\bin\perl.exe \\spd\wpkg\tools\shortcut.pl "%ProgramFiles%"\OpenOffice.org\program\soffice.exe "%AllUsersProfile%\Start Menu\Programs\OpenOffice"' / -->
+
  <!-- install cmd='%SOFTWARE%\OpenOffice\enu\setup.exe -r:\\server\share\OpenOffice\officeop.txt -D:\"%ProgramFiles%\OpenOffice.org\" -debug -net' -->
 
  <!-- make a temporary directory -->
 
  <!-- make a temporary directory -->
 
  <install cmd='cmd /c mkdir "%TEMP%\ooo"' />
 
  <install cmd='cmd /c mkdir "%TEMP%\ooo"' />
 
  <!-- Expand the zip file -->
 
  <!-- Expand the zip file -->
  <install cmd='"c:\Program Files\7-Zip\7z.exe" e -y -o"%TEMP%"\ooo \\server\share\openoffice2\OOo_1.9.122_Win32Intel_install.zip"' />
+
  <install cmd='"%PROGRAMFILES%\7-Zip\7z.exe" e -y -o"%TEMP%"\ooo %SOFTWARE%\openoffice2\OOo_2.0_Win32Intel_install.zip"' />
 
  <install cmd='"%TEMP%\ooo\setup" /q' />
 
  <install cmd='"%TEMP%\ooo\setup" /q' />
 
  <install cmd='cmd /c del /s /q "%TEMP%\ooo"' />
 
  <install cmd='cmd /c del /s /q "%TEMP%\ooo"' />
 
  <remove cmd="msiexec /qb /l* c:\netinst\logs\openoffice.log x{C3B3C054-0F00-4BC3-9A90-9C6B3EF4201F}" />
 
  <remove cmd="msiexec /qb /l* c:\netinst\logs\openoffice.log x{C3B3C054-0F00-4BC3-9A90-9C6B3EF4201F}" />
<upgrade cmd='' />
+
</package>
  </package>  
+
</source>
 +
 
 +
== Open questions ==
 +
 
 +
1- Is there an easy way to associate .csv and .dbf files?
 +
 
 +
2- Is there an easy way to active the quickstarter? (In Version 2.1, it seems to be disabled by default?)
 +
 
 +
3- Is there a way to deactivate the registration wizard that appears for each user at first start ?
 +
 
 +
Partial answers
 +
 
 +
1- by modifying HKEY_CLASSES_ROOT in the registry
 +
 
 +
2- by dropping a link to it in the startup folder
 +
 
 +
3 - See the methods above
 +
 
 +
Other answers:
 +
 
 +
3- by copying a folder OpenOffice.org2 into the profile of the user at session start.
 +
The folder is a copy made from a user profile which user has done the registration.
 +
What is interesting in this solution is that it enables you to set automatically the preferences you want for any new user. This solution is the one used by most openOffice admin (see oooforum).
 +
Just cut and paste the snippet below and place it into your logon.bat.
 +
 
 +
 
 +
<source lang="dos">
 +
rem ### ### ### ### ### ### ### ### ### ### ### ### ###
 +
rem
 +
rem OPENOFFICE 2.2
 +
rem
 +
rem ### ### ### ### ### ### ### ### ### ### ### ### ###
 +
 
 +
 
 +
IF NOT EXIST "%PROGRAMFILES%\OpenOffice.org 2.2\program\soffice.exe" GOTO OOO2END
 +
IF EXIST "%APPDATA%\OpenOffice.org2\" GOTO OOO2END
 +
xcopy /v /s /i /e /h /c /y /q "\\server\netlogon\OpenOffice.org2" "%APPDATA%\OpenOffice.org2"
 +
:OOO2END
 +
</source>
  
[[category:Silent Installers|OpenOffice.org 2.x]]
+
[[category:Silent Installers]]
''
+
[[category:OpenOffice]]

Latest revision as of 06:19, 2 February 2009

This is a silent installer and uninstaller for OpenOffice.

Disabling the First Start Wizard

Setup.xcu Method

Create a user's OpenOffice profile directory (%APPDATA%\OpenOffice.org2\user\registry\data\org\openoffice) and copy the following file (Setup.xcu) there before they run OpenOffice. Then when they run OpenOffice they won't be prompted to complete the Start Wizard.

<?xml version="1.0" encoding="UTF-8"?>
<oor:component-data xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" oor:name="Setup" oor:package="org.openoffice">
 <node oor:name="Office">
  <prop oor:name="LicenseAcceptDate" oor:type="xs:string">
   <value>2010-01-01T11:51:13</value>
  </prop>
  <prop oor:name="FirstStartWizardCompleted" oor:type="xs:boolean">
   <value>true</value>
  </prop>
 </node>
</oor:component-data>

DisableFirstStartWzd.oxt + Common.xcu Extension Method

First, download the OpenOffice.org installer (OOo_2.4.1_Win32Intel_install_en-US.exe) from OpenOffice.org Website. Make sure to uncheck "Include the Java JRE with this download" to download the package without the bundled JRE.
Run the installer - it creates a directory named OpenOffice.org 2.4 (en-US) Installation Files, which includes several files. The ones you need are:

openofficeorg24.msi
openoffice.org-activex.cab
openoffice.org-base.cab
openoffice.org-calc.cab
openoffice.org-core01.cab
openoffice.org-core02.cab
openoffice.org-core03.cab
openoffice.org-core04.cab
openoffice.org-core05.cab
openoffice.org-core06.cab
openoffice.org-core07.cab
openoffice.org-core08.cab
openoffice.org-core09.cab
openoffice.org-draw.cab
openoffice.org-emailmerge.cab
openoffice.org-graphicfilter.cab
openoffice.org-impress.cab
openoffice.org-javafilter.cab
openoffice.org-math.cab
openoffice.org-onlineupdate.cab
openoffice.org-pyuno.cab
openoffice.org-testtool.cab
openoffice.org-writer.cab
openoffice.org-xsltfilter.cab

Next, you need to download the DisableFirstStartWzd.oxt extension and place this in the same directory as the files above.

For some reason, using this extension alone won't work in OpenOffice 2.4.1 (untested in 2.4.0). The Wizard will still come up, although in a smaller version (skipping the first steps, going directly to the "Register now/Register later" dialog. Run OpenOffice once and go through the dialog, that way it will create a user profile in %APPDATA%. Then you will need to copy the file %APPDATA%OpenOffice.org2\user\registry\data\org\openoffice\Office\Common.xcu to the same directory as all the other files.


Installer Parameters

You can customize your installation by using the following supported installer parameters: http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Automatic_Installation_on_Windows


WPKG install

For security reasons you are strongly encouraged to upgrade to version 2.4.2: http://www.openoffice.org/security/cves/CVE-2008-2237.html, http://www.openoffice.org/security/cves/CVE-2008-2238.html.

The following installer is for English version, without bundled JRE, and associates as default application for Word, Excel and Powerpoint file extensions.

<?xml version="1.0" encoding="UTF-8"?>
<packages>
<package id="openoffice2"
	name="OpenOffice.org 2.4.x"
	revision="20081103"
	reboot="false"
	priority="0">

	<check type="uninstall" condition="exists" path="OpenOffice.org 2.4" />
	<depends package-id="java6" />

	<install cmd='msiexec /qn /i "%SOFTWARE%\openoffice2\openofficeorg24.msi" ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1' />
	<install cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" add --shared %SOFTWARE%\openoffice2\DisableFirstStartWzd.oxt' />
	<install cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" add --shared %SOFTWARE%\openoffice2\Common.xcu' />

	<upgrade cmd='msiexec /qn /i "%SOFTWARE%\openoffice2\openofficeorg24.msi" ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1' />
	<upgrade cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" add --shared %SOFTWARE%\openoffice2\DisableFirstStartWzd.oxt' />
	<upgrade cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" add --shared %SOFTWARE%\openoffice2\Common.xcu' />

	<remove cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" remove --shared org.openoffice.legacy.DisableFirstStartWzd.oxt' />
	<remove cmd='"%ProgramFiles%\OpenOffice.org 2.4\program\unopkg.exe" remove --shared org.openoffice.legacy.Common.xcu' />
	<remove cmd='msiexec /qn /x {1AE79DA3-6C93-45C5-8318-E440C2A0A73A}' />
</package>
</packages>

Note If you install i.e. OOo 2.4.2 it also announces itself as OO 2.4 in the Software repository. To know if it got installed, replace

<check type="uninstall" condition="exists" path="OpenOffice.org 2.4" />

with

<check type="registry" condition="exists" path="HKLM\SOFTWARE\OpenOffice.org\OpenOffice.org\2.4\{1AE79DA3-6C93-45C5-8318-E440C2A0A73A}\INSTALLLOCATION" />

The long hexnumber is the Uninstall-ID (see below). This always works, also with minorversion updates.

The uninstall ID can be checked from the file setup.ini in the directory OpenOffice.org 2.4 (en-US) Installation Files

Question Does "uninstall ID" mean "{1AE79DA3-6C93-45C5-8318-E440C2A0A73A}" or "OpenOffice.org 2.0"?

Answer The long hex number.

Localized builds

The best way to install a localized build (in my opinion) is to install localized language packs in addition to the English installer. This way the user can choose if they want to have the English interface or the localized one. An example for the Traditional Chinese language pack:

<package id="ooo-2.4-langpack-zh"
  name="OpenOffice.org 2.4 language pack (zh)"
  revision="1"
  reboot="false"
  priority="0">
  <check type="registry" condition="exists" path="HKLM\SOFTWARE\Microsoft\Window
s\CurrentVersion\Uninstall\{B95154FE-365D-4867-B915-24EEEE6EFB27}\Version" />
  <install cmd='msiexec /qn /i "%SOFTWARE%\ooo-2.4-langpack-zh\openofficeorg24.msi" ALLUSERS=1' />
  <remove cmd='msiexec /qn /x{B95154FE-365D-4867-B915-24EEEE6EFB27}' />
</package>

Note that {B95154FE-365D-4867-B915-24EEEE6EFB27} is the product code as found in setup.ini.

To switch to that language, choose Tools | Options | Language Settings | Language and set the "language of User Interface".


Customizing

General

MSI Transform

According to the OpenOffice.org 2 setup guide, you can customize an automated installation using Microsoft's Orca tool.

MSI Installer Switches

Certain customizations are possible without Orca. For example, AppDeploy.com gives the tip for making OpenOffice.org the default program for Microsoft Office file types:

msiexec /qb! /i openofficeorg20.msi ALLUSERS=1 SELECT_WORD=1 SELECT_EXCEL=1 SELECT_POWERPOINT=1

See the new documentation Automatic Installation on Windows at the OpenOffice.org Wiki for a detailed documentation of all the MSI properties.

soffice.ini

You can edit options in %ProgramFiles%\OpenOffice.org 2.4\program\soffice.ini.

For example to disable the splash screen, place sed.exe and the dependencies (libiconv2.dll and libintl3.dll) from GnuWin32 into your tools folder. Then add the following lines to the bottom of each section:

<install cmd='%WPKGROOT%\tools\sed.exe -i s/^Logo=1$/Logo=0/ "%ProgramFiles%\OpenOffice.org 2.4\program\soffice.ini"' />
...
<upgrade cmd='%WPKGROOT%\tools\sed.exe -i s/^Logo=1$/Logo=0/ "%ProgramFiles%\OpenOffice.org 2.4\program\soffice.ini"' />

Common.xcu

Alternatively, create a user's OpenOffice profile directory (%APPDATA%\OpenOffice.org2\user\registry\data\org\openoffice) and copy the following file (Common.xcu) there before (or after) they run OpenOffice.

Example configuration which will warn when print for paper orientation and size; auto save every 10 minutes; not AutoCorrect URLs; set the graphics cache's memory per object to 5MB;

set the total graphics cache to use for OpenOffice to 33MB:
<?xml version="1.0" encoding="UTF-8"?>
<oor:component-data xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" oor:name="Common" oor:package="org.openoffice.Office">
 <node oor:name="Misc">
  <prop oor:name="FirstRun" oor:type="xs:boolean">
   <value>false</value>
  </prop>
 </node>
 <node oor:name="Print">
  <node oor:name="Warning">
   <prop oor:name="PaperOrientation" oor:type="xs:boolean">
    <value>true</value>
   </prop>
   <prop oor:name="PaperSize" oor:type="xs:boolean">
    <value>true</value>
   </prop>
  </node>
 </node>
 <node oor:name="Save">
  <node oor:name="Document">
   <prop oor:name="AutoSave" oor:type="xs:boolean">
    <value>true</value>
   </prop>
   <prop oor:name="AutoSaveTimeIntervall" oor:type="xs:int">
    <value>10</value>
   </prop>
  </node>
 </node>
 <node oor:name="AutoCorrect">
  <prop oor:name="SetInetAttribute" oor:type="xs:boolean">
   <value>false</value>
  </prop>
 </node>
 <node oor:name="Cache">
  <node oor:name="GraphicManager">
   <prop oor:name="ObjectCacheSize" oor:type="xs:int">
    <value>5242880</value>
   </prop>
   <prop oor:name="TotalCacheSize" oor:type="xs:int">
    <value>33554432</value>
   </prop>
  </node>
 </node>
</oor:component-data>

Specific Customisations

TODO

Alternative install

Here's another possibility:

<package id="openoffice" name="Openoffice 2" revision="1" priority="0" reboot="false">
 <check type="uninstall" condition="exists" path="OpenOffice.org 2.0" />
 <!-- install cmd='%SOFTWARE%\OpenOffice\enu\setup.exe -r:\\server\share\OpenOffice\officeop.txt -D:\"%ProgramFiles%\OpenOffice.org\" -debug -net' -->
 <!-- make a temporary directory -->
 <install cmd='cmd /c mkdir "%TEMP%\ooo"' />
 <!-- Expand the zip file -->
 <install cmd='"%PROGRAMFILES%\7-Zip\7z.exe" e -y -o"%TEMP%"\ooo %SOFTWARE%\openoffice2\OOo_2.0_Win32Intel_install.zip"' />
 <install cmd='"%TEMP%\ooo\setup" /q' />
 <install cmd='cmd /c del /s /q "%TEMP%\ooo"' />
 <remove cmd="msiexec /qb /l* c:\netinst\logs\openoffice.log x{C3B3C054-0F00-4BC3-9A90-9C6B3EF4201F}" />
</package>

Open questions

1- Is there an easy way to associate .csv and .dbf files?

2- Is there an easy way to active the quickstarter? (In Version 2.1, it seems to be disabled by default?)

3- Is there a way to deactivate the registration wizard that appears for each user at first start ?

Partial answers

1- by modifying HKEY_CLASSES_ROOT in the registry

2- by dropping a link to it in the startup folder

3 - See the methods above

Other answers:

3- by copying a folder OpenOffice.org2 into the profile of the user at session start. The folder is a copy made from a user profile which user has done the registration. What is interesting in this solution is that it enables you to set automatically the preferences you want for any new user. This solution is the one used by most openOffice admin (see oooforum). Just cut and paste the snippet below and place it into your logon.bat.


rem ### ### ### ### ### ### ### ### ### ### ### ### ### 
rem
rem 	OPENOFFICE 2.2
rem
rem ### ### ### ### ### ### ### ### ### ### ### ### ### 


IF NOT EXIST "%PROGRAMFILES%\OpenOffice.org 2.2\program\soffice.exe" GOTO OOO2END
IF EXIST "%APPDATA%\OpenOffice.org2\" GOTO OOO2END
xcopy /v /s /i /e /h /c /y /q "\\server\netlogon\OpenOffice.org2" "%APPDATA%\OpenOffice.org2"
:OOO2END