Office Web Apps installed on Windows 7

This is not a supported configuration and should only be undertaken at your own risk.

Installing Office Web Apps on a Windows 7 deployment of SharePoint is not officially supported, see: http://support.microsoft.com/kb/2276219. However, in a deployment environment or for demonstrating the capabilities of the great Office Web Apps it can be very useful to ‘work around’ this limitation.

Firstly, this article assumes you have a working deployment of SharePoint 2010 already running on Windows 7. If this is not the case see ‘Setting Up the Development Environment for SharePoint 2010 on Windows Vista, Windows 7, and Windows Server 2008’ : http://msdn.microsoft.com/en-us/library/ee554869.aspx

Once your development environment is built, tested and working, you’ll need a copy of the Office Web App installation media. Once this is attained, you can’t simply run the executable. Just like the SharePoint installation, you need to extract the contents of the executable with the following command:

en_office_web_apps_x64_517488.exe /extract:c:\OfficeWebApps

Once you’ve extracted the installation files, you need to edit the \Files\Setup\config.xml (relative to the extract location) and include the <Setting Id="AllowWindowsClientInstall" Value="True"/> node as per the SharePoint 2010 installation procedures for Window 7. Your extracted and modified config.xml file for Office Web Apps should now look like this:

<Configuration>
  <Package Id="sts">
    <Setting Id="LAUNCHEDFROMSETUPSTS" Value="Yes"/>
  </Package>
  <Logging Type="verbose" Path="%temp%" Template="Wac Server Setup(*).log"/>
  <Setting Id="SERVERROLE" Value="SINGLESERVER"/>
  <Setting Id="USINGUIINSTALLMODE" Value="1"/>
  <Setting Id="SETUPTYPE" Value="CLEAN_INSTALL"/>
  <Setting Id="SETUP_REBOOT" Value="Never"/>
  <Setting Id="AllowWindowsClientInstall" Value="True"/>
</Configuration>

Save the updated config.xml file.

Now if you try to run setup.exe from the extracted installation media, you’ll be prompted with the following error:

image

This happens when the setup program tried to determine if all the required server roles are present on the current machine. As the current machine in Windows 7, these checks fail. To work around this issue we need to break out Visual Studio.

Firstly, in Visual Studio, create a new Console Application and use the following code for the Main[] method:

using System;
using System.Collections.Generic;
using System.Text;

namespace ExitCodeConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Environment.Exit(1003);
        }
    }
}

As you can see this program is very simple. All it does is return exit code 1033. This is the exit code that a correctly configured Windows 2008 Server will return to the setup program that will allow the installation to proceed.

Finally, compile your new Console Application into an exe file and copy the resultant exe file to:

c:\windows\system32\servermanagercmd.exe

This file should not already exist on a Window 7 machine but does exists on a Windows 2008 server. To test your console application, you can try the following:

image

Check that  the exit code of 1003 is returned.

Now rerun the setup for Office Web App and the installation should proceed without a hitch. I’ve been running Office Web Apps on a few Windows 7 development machines now for +6 months and have not found a problem with this technique. However, this is not a support configuration and you follow these procedures at your own risk.

Windows 7 running Office Web Apps:

image

Enjoy!