Actually I did figure this out. It might be a little clunky but it works well. In our environment, we have Office 2007 Ent installed but we are using Access 2003. I was trying to remove Access 2003 and replace it with Access 2007. Here's how I did it:
I first wrote a batch file that will check for MSACCESS.EXE in the Office11 folder, which if exists will uninstall Office 2003 products. Once finished it will kick off the network-based install for Office 2007 calling the custom.xml I created that will only add Access 2007. I did not use an .MSP file.
The batch file looks like this:
Code:
@echo off
color 17
title Microsoft Office Replacement Batch File
echo .
echo .
echo Checking for older versions of Microsoft Office.....
ping -n 5 127.0.0.1 >NUL
if exist "%PROGRAMFILES%\Microsoft Office\OFFICE11\MSACCESS.EXE" goto Uninstall
goto Install
:Uninstall
cls
echo Older version of Microsoft Office detected.
ping -n 3 127.0.0.1 >NUL
echo Let's get rid of that.
ping -n 3 127.0.0.1 >NUL
echo .
echo .
cls
echo Uninstalling Office 2003. Please wait.....
Start /wait Msiexec.exe /x {90110409-6000-11D3-8CFE-0150048383C9} /qr
:Install
cls
echo Older version of Microsoft Office not detected.
ping -n 3 127.0.0.1 >NUL
cls
echo We'll install Microsoft Office 2007.
ping -n 3 127.0.0.1 >NUL
echo .
echo .
echo Running Office 2007 Installer. Please wait.....
Start /wait \\myserver\office\install\setup.exe /config \\myserver\office\install\customconfig.xml
echo .
echo .
echo .
cls
echo All Done! You should restart your computer immediately!
echo Press Enter to exit.
Pause>nul
The XML I created looks like this:
Code:
Configuration Product="Enterprise">
<Display Level="basic" CompletionNotice="no" SuppressModal="yes" AcceptEula="yes" />
<PIDKEY Value="YOURPRODUCTKEYGOESHERE" />
<USERNAME Value="User" />
<COMPANYNAME Value="Our Company Name" />
<!--
################################################################
2007 OFFICE SYSTEM
INSTALL NEWER VERSIONS
################################################################
-->
<!-- Access -->
<OptionState State="Local" Children="Force" Id="ACCESSFiles" />
<SetupUpdates
CheckForSUpdates="Yes"
SUpdateLocation="\\myserver\Office\Updates"/>
<Setting Id="SETUP_REBOOT" Value="IfNeeded" />
</Configuration>
I know the batch file is a little cheesy and can be modified but it works for us. I hope this helps.