Office 365 Deployment Series with MEMCM - Post 2 - Creating the Office Installer - Simple

In this Deployment and Maintenance of Office 365 using Microsoft's Endpoint Manager, Configuration Manager (MEMCM / SCCM) post, we're going to get familiar with the Office 365 App Creation process that comes built into Configuration Manager. While Configuration Manager isn't required to create and deploy Office 365, they have done a very nice job of making it simple. If you have the desire to do it standalone or are unfortunate and don't have access to ConfigMgr, the process is still pretty simple to come by the installer package.

Before I go much further, I'm going to explain the Configuration.XML file [MS Docs]. This file (which can be named anything) is the "database" that the setup engine uses to know how to configure office. Instead of having a hundred different command line switches, there is one XML to rule them all. You'll specify the channel of the Office 365, the apps you want to exclude, the apps you want to include, if you want 32bit or 64bit, if you want to magically remove previous MSI installed office versions, among so many other options, like language packs, and licensing models. Everything else in the install process is identical. There is NOTHING unique about your office install compared to mine, the only thing that sets us apart is this XML file, and in many cases, it will probably be the same for many organizations. Now that I've covered that, lets get into the installer.

Office Icons I use in Software Center:

I grab the versions just under the 500 x 500 pixel version.

Office Detection Methods

  • Semi-Annual Enterprise Channel: HKLM | Key: Software\Microsoft\Office\ClickToRun\Configuration | Value: CDNBaseUrl | Data Type: String | Eq: http://officecdn.microsoft.com/pr/7ffbc6bf-bc32-4f92-8982-f9dd17fd3114
  • Semi-Annual Enterprise Channel (Preview): Registry: HKLM | Key: Software\Microsoft\Office\ClickToRun\Configuration | Value: CDNBaseUrl | Data Type: String | Eq: http://officecdn.microsoft.com/pr/b8f9b850-328d-4355-9145-c59439a0c4cf
  • Monthly Enterprise Channel: Registry: HKLM | Key: Software\Microsoft\Office\ClickToRun\Configuration | Value: CDNBaseUrl | Data Type: String | Eq: http://officecdn.microsoft.com/pr/55336b82-a18d-4dd6-b5f6-9e5095c314a6

Also for easy reference, Detection Methods for the "Addons"
Each one has 2 detections, One is always this: Detection: Registry: HKLM | Key: Software\Microsoft\Office\ClickToRun\Configuration | Value: CDNBaseUrl | Must Exist

  • Access: File= %ProgramFiles%\Microsoft Office\root\Office16  | File = MSACCESS.EXE
  • Project Pro: Registry: HKLM | Key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ProjectPro2019Volume - en-us | Value: DisplayName | Must Exist
  • Project Std: Registry: HKLM | Key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ProjectStd2019Volume - en-us | Value: DisplayName | Must Exist
  • Visio Pro: Registry: HKLM | Key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\VisioPro2019Volume - en-us | Value: DisplayName | Must Exist
  • Visio Std: Registry: HKLM | Key: SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\VisioStd2019Volume - en-us | Value: DisplayName | Must Exist

Non-ConfigMgr App Creation Process:

  • Download the Office Deployment Tool & Extract (This will provide the setup.exe & a few XML samples)
  • Go to https://config.office.com/ and create your XML file to fit your needs and download it.
  • To download the Content for Deployment, launch your elevated command prompt, run setup with download argument
  •    setup.exe/download\\server\share\Myconfigfile.xml
  • That will download the installer files to a sub-folder from where you ran setup.
  • To install, switch /download to /Configure and it installs.
  • now that you made it through that high level overview, check out the [MS Docs] for some good info

Configuration Manager Style: [MS Docs]

Creating the Application

I'm going to walk through the Screen Captures of the process. While I don't capture every image, you'll get the overall idea of it. We're going to start by launching the Office 365 Installer from the Office 365 Client Management Node.

Office 365 Client Management Node
Microsoft Office 365 Client Installation Wizard
When it launches, you'll need to provide a name, something descriptive and obvious is always good, as well as source location for CM to download the installer to.
Microsoft 365 Client Installation Wizard
Go ahead and click "Go to the Office Customization Tool", which is basically config.office.com in a window.
Office 365 Deployment Settings
These will probably appear different by the time you read this.  Pick the best channel or channels for your needs.
Office 365 Deployment Settings
I've chosen items that fit our modern work place.
Office 365 XML Formats
Here, I've chosen XML formats, but do what you will
Office 365 Deployment Settings
When you click review in the upper right, you'll be shown this display with an overview of your well throughout decisions, potentially making you second guess some, but don't, you got this.  Then click Submit... don't press the other ones.
Office 365 Client Installation Wizard
Once you've clicked Submit, you'll come back to the Console Wizard, lets click next.
Microsoft 365 Office Client Installation Wizard
Hey, why not, lets deploy this sucker and see what happens.
Microsoft Office 365 Client Installation Wizard
I created a user collection with some folks that I think would be worthy to test my Office deployment.
Microsoft Office 365 Client Installation Wizard
Let's get it distributed.
Microsoft Office 365 Deployment Settings
Let's make it available, while I'm pretty confident this is going to work, I haven't put in the change requests to force this down in a required fashion.
Microsoft Office 365 Client Installation Wizard Summary
Alright, here we are, let's just keep clicking next and see what happens.
Microsoft Office 365 Client Installation Wizard Progress
Ok, this step... takes time, a lot of it. This step is downloading the required content (about 2.5 - 3 GB) and populates that folder you specified in the beginning.
Microsoft Office 365 Client Installation Wizard Completion
Yes, we made it!  Now lets go check out what we made.
The Application Info
Office 365 Channel Properties
Here is what it looks like in the console, before we make any modifications.
Office 365 XML File
Here is the content, along with the XML file that it generated.
Office 365 Channel Properties
I always check the box, because hey, why wouldn't I?
Office 365 Channel Properties
I've added a description and an Icon (Link at the top of page).
Office 365 Software Center Recast
And here it is in Software Center. Pretty Nice!
Office 365 Visio Project Teams
And after Installing.. Office, Project, Visio, Teams, we got it all!

So now you're like, that's great, super easy.. but now I have to create like 20 different XML files to get all of the different variations of the Office Install I want.

  • Office with Access
  • Office without Access
  • Office with Visio Standard
  • Office with Visio Pro
  • Office with Project standard
  • Office with Project Pro
  • Office with Access & Visio Standard
  • Office with Access, Visio Standard and Project Pro
  • Office with Visio Pro & Project Standard
  • ..... etc,etc, etc...
  • OH... and I want those available in 3 of the 4 different Channels, so times it by 3.

This seems like a ton of work, along with a ton of different Applications, all for different variations of Office.

Stick around to see how we can take the installer to the next level by making the XML completely dynamic. We can simplify this greatly with the help of PowerShell and a little bit of thinking outside docs.

Check out all posts within this series:

Office 365 Deployment Series with MEMCM - Post 1 - Intro & PreReqs

Office 365 Deployment Series with MEMCM - Post 3 - Creating the Office Installer - Advanced

Office 365 Deployment Series with MEMCM - Post 4 - Deployment Methods

Office 365 Deployment Series with MEMCM - Post 5 - Office Updates / ADR