Deploying Microsoft Office 2016: Building the Application Package in System Center Configuration Manager

It’s been a long process, but it’s finally time to build the Application objects in System Center Configuration Manager for Microsoft Office and its sibling programs. There is just one bit of housekeeping to take care of first. One of my rules for a Configuration Manager Application is that it must have an uninstallation command. This provides Software Center with the ability to remove it, thus giving users an “app store” experience. That takes a little bit of work, and so we’ll do that first. Then we’ll walk through the Application-building process. Next time, we’ll use our new Applications along with our Offscrub package to build a task sequence for deployment.

Silent Uninstallation

As we did in the Customizing Setup post, we will consult the Office 2013 documentation to help us. The Setup command-line options reference for Office 2013 on TechNet has a helpful section describing uninstallation. Basically we need to use a custom config.xml file to instruct the setup program to perform a quiet uninstallation. This documentation doesn’t mention it, but because Configuration Manager Applications must not initiate a reboot, I’m going to add the SETUP_REBOOT property with a value of “Never” in order to be certain that the uninstallation process will not restart the computer unexpectedly. (You may recall that we added this property to the customization file for installation, but we don’t have a customization file for uninstallation.) To do that, we’ll use the Setting element of config.xml.

Open your favorite text editor, and save the following text as UTF-8. I named my file “Config-ProPlus2016-Silent-Uninstall-2016-02-22.xml” in the root of my deployment folder: \\fileserver\software$\Microsoft\Office Professional Plus 2016 (32-bit).

<Configuration Product="ProPlus">
    <Display Level="None" CompletionNotice="No" SuppressModal="Yes" AcceptEula="Yes" />
    <Setting Id="SETUP_REBOOT" Value="Never" />

You can quickly create the needed files for other products in the Office family by changing the Product attribute of the Configuration element. Open the config.xml file located inside each product’s folder to obtain the appropriate value for that product. For example, for Visio Professional, look at the vispro.ww\config.xml file, and find that the Product attribute must be “VisPro”.

<Configuration Product="VisPro">

Warning: Don’t change the existing config.xml files in the installation source. Office Setup uses these files during installation, so our uninstallation settings must be saved elsewhere.

Building the Configuration Manager Application

Building the Configuration Manager Application for Office is a two-pass process. First, we’ll point ConfigMgr to the product MSI so that as many properties as possible populate automatically. Then we’ll go back and edit the Application to add our uninstallation command, prerequisite applications, and system requirements.

  1. In Configuration Manager Console, in the Software Library workspace, navigate to Overview > Application Management > Applications.
  2. In the ribbon, click Create Application. The Application Wizard will appear.
  3. On the General – Specify settings for this application page, select Automatically detect information about this application from installation files, and choose Windows Installer (*.msi file) as the Type.
  4. In the Location box, type the network path to the specific product’s MSI file under your installation source. For example, the MSI file for 32-bit Office Professional Plus is located in the proplus.ww folder. In my installation source, it is
    \\fileserver\software$\Microsoft\Office Professional Plus 2016 (32-bit)\proplus.ww\proplusww.msi
  5. Click Next, and then click Next again to begin customization.
  6. Fill out the Specify information about this application page. This is where we supply Office Setup with our Office Customization Tool settings as well as our uninstallation settings. Although Office has a Windows Installer-based setup process, using setup.exe is required. Run setup /? to see all of the options. Keeping in mind that our example is 32-bit Office Professional Plus 2016, here are the settings.
    Name Microsoft Office Professional Plus 2016 (32-bit)
    Publisher Microsoft
    Software version 2016 (32-bit)
    Installation program setup.exe /adminfile "OCT-ProPlus2016-x86-Silent-Install-2016-02-22.MSP" /config "proplus.ww\config.xml"
    Run installation program as 32-bit process on 64-bit clients. Checked
    Install behavior Install for system

    Because we combined multiple products into one installation source, Office Setup does not automatically know which product we want to install. The /config switch and its argument provide this information to Setup so that the user is not prompted.

  7. Click Next, and verify that the settings are correct.
  8. Click Close to exit the wizard.

Double-click the newly-created Application object to open it. Now we’ll change additional settings that weren’t available in the wizard.

  1. On the General tab, check the Allow this application to be installed from the Install Application task sequence action without being deployed.
  2. On the Application Catalog tab, next to the Icon label, click Browse… Navigate to the Office installation source folder, and choose setup.exe. Select its only icon as the icon for this Application. Although this setting is on the Application Catalog tab, the icon will also appear in Software Center. This adds a level of professionalism to the Application package and makes Software Center seem more like a well-put-together app store.
  3. On the Deployment Types tab, select the deployment type and click Edit.
  4. On the Content tab, in the Content location box, remove the specific product folder from the path. In this case, that means deleting proplus.ww so that the path is \\fileserver\software$\Microsoft\Office Professional Plus 2016 (32-bit)\. (Configuration Manager used the longer path because we initially pointed it to the MSI file, but we really need the whole folder structure.)
  5. On the Programs tab, type the following into the Uninstall program text box:
    setup.exe /uninstall ProPlus /config "Config-ProPlus2016-Silent-Uninstall-2016-02-22.xml"
  6. On the Requirements tab, add the system requirements we obtained in the Overview and Prerequisites.
    Requirement Type Operator Values
    CPU speed Greater than or equal to 1000 MHz
    Total physical memory Greater than or equal to 2000 MB
    Free Disk Space of system drive Greater than or equal to 3000 MB
    Operating system One of Windows 7 SP1 (64-bit), Windows 7 SP1 (32-bit), Windows Server 2008 R2 SP1 (64-bit), All Windows 8 (64-bit), All Windows 8 (32-bit), Windows Server 2012, All Windows 8.1 (64-bit), All Windows 8.1 (32-bit), Windows Server 2012 R2, Windows 10
    OS Installation Type Not equal to Server Core
    Internet Explorer Version Begins with 11.
    (Note that the period is included in the value: “11.”)
  7. On the Dependencies tab, add a dependency group with the name .NET Framework 3.5, and add the 32-bit deployment types from the Microsoft .NET Framework 3.5 Application package that we created earlier. That should be nine deployment types: two each (32-bit and 64-bit) for Windows 10 v1511, 10 Release, 8.1/2012 R2, and 8/Server 2012; and one for all bitnesses of Windows 7/Server 2008 R2.
  8. Add a dependency group with the name .NET Framework 4.x, and add both deployment types from the Microsoft .NET Framework 4.5.2 or higher application package that we created earlier.
  9. Add a dependency group with the name Report Viewer, and add the single deployment type for the Microsoft Report Viewer Redistributable 2008 Application that we created earlier.
  10. Click OK until you have dismissed the Application’s Properties window.

Congratulations! Now you have an Office 2016 application package suitable for deploying during operating system deployment with a task sequence. Unfortunately, all the work we have done up to this point is still not quite enough to have a reliable deployment of Office¬†on existing computers with a previous version of Office already installed. Do not–I repeat, DO NOT–deploy this application package to your whole company. If you do, you will have a bad time. Why? See my previous post on removing old versions for the answer. For now, you can go ahead and use this application in new deployments, but you’ll have to tune in next time to get the solution for existing installations.

Other Programs in the Office Family

You can follow the same general procedure to package the other Microsoft Office-family products we included in our source folder structure. Make a separate Configuration Manager Application for Visio and Project Standard. Include all of the same system requirements and dependencies except for Report Viewer which can be omitted.

Coming Up

The next post is the last one in the series on deploying Microsoft Office 2016. In it, I will explain how to use everything we’ve built to provide a reliable delivery of Office 2016 in your organization regardless of whether an existing Office installation is present.

<update date=”2017-07-11″>Corrected HTML encoding errors in code samples.</update>

9 thoughts on “Deploying Microsoft Office 2016: Building the Application Package in System Center Configuration Manager”

  1. Great article but I have a question… if I was building a package to deploy just Visio 2016 click to run, what would I use in the detection method? I would assume it would not be the same as it is for Office 2016 click to run

    1. Thanks mmenzie. If you are installing Visio Professional 2016 only, you would follow very similar steps as those outlined in the previous “Customizing Setup” post and this post. Above under “Building the Configuration Manager Application”, step 4, you would point the Application wizard to the vispro.ww\visproww.msi file instead of the proplus.ww\proplusww.msi file. That will automatically populate the detection logic with the product code from the Windows Installer package.

  2. Great articles. I’ve gone though all your steps and I tried running the un-installation of ProPlus from the command line. However, every time I run it all I get is cannot find the specified config.xml when the file is sitting there in the root of my install folder and named Config-ProPlus2016-Silent-Uninstall-2017-04-25.xml

    Am I missing something?

    1. When running the command from the Command Prompt, be sure to change the current directory to your installation folder. Based on my example location, you could use the following command.
      pushd "\\fileserver\software$\Microsoft\Office Professional Plus 2016 (32-bit)"
      If you need different credentials to access the software$ share, use net use first to provide credentials as follows.
      net use \\fileserver\software$" /user:domain\user

  3. Thank you for a great post, I believe I have missed a detail or two regarding the default config.xml file, this file does not include the custom details in the oct…msp file. Do we need to specify it in the task sequence when deploying office?

    Thanks agai

    1. Thanks djamel. We did not customize the config.xml file for deployment, so we use the provided version in the installation command of the application object. For uninstallation, we *did* customize config.xml, and that is why it is saved separately with a distinct name and specified as part of the uninstallation command.

  4. Great article! I stumbled across it at just the right time when I was having some issues with deploying Office 2016 to machines that have bits and pieces of older Office versions.

    I’ve used SCCM for quite a while but never created Applications. From what I can see from your steps, you don’t push content out to DPs, do you? Or is it assumed that it’s necessary? Also, will Office content be cached on the local systems?

    1. Thanks Sandy. Indeed, you will need to distribute the content to the distribution points. Doing so is a required step of the deployment wizard if the application object has not previously been distributed, though, so it does not necessarily have to be a distinct action on your part.

  5. Thank you, Jay. Using Applications is a bit new to me but I like the extra features and capabilities they offer.

    I love the idea of combining all three apps (2016 ProPlus, Visio, and Project) into one deployment source. I had never considered it before and after reading your suggestion it just made sense. In the past, I’ve always created separate deployment sources, one for each Package. Of course, when I create the three different apps (2016 ProPlus, Visio, and Project), I’ll need to distribute the same content three times, correct?

    Thanks again, Jay. You’ve done a lot of work on this and I am eternally grateful!

Leave a Reply