Home > Office 2016, Scripting > Suppressing Office 2016’s First Run dialog windows

Suppressing Office 2016’s First Run dialog windows

As part of preparing to deploy Office 2016 in my own environment, I wanted to be able to suppress the various “What’s New” dialog windows which are displayed on Office 2016 applications’ first launch to market the applications’ features.

Screen Shot 2016 01 16 at 12 05 36 AM

Using the Microsoft Volume License installer to install Office 2016 (or using the volume license serializer package to install the volume license) will include automatic functionality to stop the version-specific “What’s New” dialog windows from appearing. However, I also needed to be able to suppress the initial “What’s New” dialog windows that appear the first launch of Office applications.

In order to suppress the initial “What’s New” dialog windows, certain settings need to be applied to the following files:

  • /Library/Preferences/com.microsoft.Outlook.plist
  • /Library/Preferences/com.microsoft.PowerPoint.plist
  • /Library/Preferences/com.microsoft.Excel.plist
  • /Library/Preferences/com.microsoft.Word.plist
  • /Library/Preferences/com.microsoft.onenote.mac.plist

Setting: kSubUIAppCompletedFirstRunSetup1507 – boolean value (true / false)
Function: Suppresses the “What’s New” dialog for Office 2016 applications’ first launch.
Applied to the following files:

/Library/Preferences/com.microsoft.Outlook.plist
/Library/Preferences/com.microsoft.PowerPoint.plist
/Library/Preferences/com.microsoft.Excel.plist
/Library/Preferences/com.microsoft.Word.plist
/Library/Preferences/com.microsoft.onenote.mac.plist

Setting: FirstRunExperienceCompletedO15 – boolean value (true / false)
Function: Suppresses additional “What’s New” dialog for Outlook and OneNote.
Applied to the following files:

/Library/Preferences/com.microsoft.Outlook.plist
/Library/Preferences/com.microsoft.onenote.mac.plist

Note: That is a capital letter O in O15, not zero15.

Setting: SendAllTelemetryEnabled – boolean value (true / false)
Function: Suppresses the offer to send crash reports to Microsoft.
Applied to the following files:

/Library/Preferences/com.microsoft.Outlook.plist
/Library/Preferences/com.microsoft.PowerPoint.plist
/Library/Preferences/com.microsoft.Excel.plist
/Library/Preferences/com.microsoft.Word.plist
/Library/Preferences/com.microsoft.onenote.mac.plist

To automate the deployment of these settings, I’ve developed a script. For more details, see below the jump.

This script is designed to check for individual Office 2016 applications. If an Office 2016 application is found on the Mac in question, the specific settings to suppress the “What’s New” dialog for that application are applied.


#!/bin/bash
# Office 2016 for Mac presents "first run" dialogs to the user to market some of its new features.
# This script will suppress these "first run" dialogs using the following settings:
#
# Setting: kSubUIAppCompletedFirstRunSetup1507 – boolean value (true / false)
# Function: Suppresses the "What’s New" dialog for Office 2016 applications' first launch
#
# Setting: FirstRunExperienceCompletedO15 – boolean value (true / false)
# Function: Suppresses additional "What’s New" dialog for Outlook and OneNote.
# Note: That is a capital letter O in "O15", not zero15.
#
# Setting: SendAllTelemetryEnabled – boolean value (true / false)
# Function: Suppresses the offer to send crash reports to Microsoft
#
# Source for settings:
# http://macops.ca/disabling-first-run-dialogs-in-office-2016-for-mac/
# Set whether you want to send diagnostic info back to Microsoft. If you want to
# offer the choice of sending diagonostic data back to Microsoft, set the following
# value for the submit_diagnostic_data_to_microsoft variable:
#
# submit_diagnostic_data_to_microsoft=true
#
# By default, the values in this script are set to send no diagnostic data to Microsoft:
submit_diagnostic_data_to_microsoft=false
DisableOffice2016FirstRun(){
# This function will disable the first run dialog windows for all Office 2016 apps.
# It will also set the desired diagnostic info settings for Office application.
/usr/bin/defaults write /Library/Preferences/com.microsoft."$app" kSubUIAppCompletedFirstRunSetup1507 -bool true
/usr/bin/defaults write /Library/Preferences/com.microsoft."$app" SendAllTelemetryEnabled -bool "$submit_diagnostic_data_to_microsoft"
# Outlook and OneNote require one additional first run setting to be disabled
if [[ $app == "Outlook" ]] || [[ $app == "onenote.mac" ]]; then
/usr/bin/defaults write /Library/Preferences/com.microsoft."$app" FirstRunExperienceCompletedO15 -bool true
fi
}
# Run the DisableOffice2016FirstRun function for each detected Office 2016
# application to disable the first run dialogs for that Office 2016 application.
if [[ -e "/Applications/Microsoft Excel.app" ]]; then
app=Excel
DisableOffice2016FirstRun
fi
if [[ -e "/Applications/Microsoft OneNote.app" ]]; then
app=onenote.mac
DisableOffice2016FirstRun
fi
if [[ -e "/Applications/Microsoft Outlook.app" ]]; then
app=Outlook
DisableOffice2016FirstRun
fi
if [[ -e "/Applications/Microsoft PowerPoint.app" ]]; then
app=Powerpoint
DisableOffice2016FirstRun
fi
if [[ -e "/Applications/Microsoft Word.app" ]]; then
app=Word
DisableOffice2016FirstRun
fi

view raw

gistfile1.txt

hosted with ❤ by GitHub

The script and an associated payload-free package are available on Github at the following address:

https://github.com/rtrouton/rtrouton_scripts/tree/master/rtrouton_scripts/disable_office_2016_first_run_settings

Categories: Office 2016, Scripting
  1. blackwire
    February 9, 2016 at 7:40 am

    any idea how to suppress office 2016’s template dialog windows (word. excel, power point) ?

  2. April 13, 2016 at 9:37 pm

    I would really like to use this script. However, it seems that these .plist files don’t exist in the non volume-licensed Office 365 version of 2016. Or, at least they don’t exist in the last few current versions, since about 15.18 or so. I wonder if this is a fundamental difference between the volume licensed version and the Office 365 activated version.

    Would you have any insight into how I can do what you outline in this article, given the limitations I’ve outlined?

  3. SIJ
    May 19, 2016 at 6:28 am

    I really like this script (Thanks Rich)
    I noticed with the arrival of 15.21 VL Installer and 15.22 Suite the extra Outlook/OneNote section no longer works for OneNote.

    Poking around the Container OneNote plist I noticed the format to stop the What’s New prompts is now a plist array.

    I added this to the end of the above script and have tested it over the last few days.

    # Disable OneNote What’s New in Office 2016 v15.22 which is not disabled by the above script
    # All commands apear to be required to suppress OneNote What’s New message
    # Remember to check the array integers as the sequence and numbers appear to change with each OneNote since around 15.18 release
    # Also the first command deletes the FirstRunExperienceCompletedO15 key created by the above script as it is not needed and I didn’t want to break the script.

    /usr/bin/defaults delete /Library/Preferences/com.microsoft.onenote.mac FirstRunExperienceCompletedO15
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 5
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 10
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 1
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 11
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 4
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 9
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 2
    sleep 5
    /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 7
    sleep 5

    it works for me, so here it is for peer review and I hope others find it useful?
    I’m not a big scripter so If someone can wrap it up in a well written script as Rich has here, then thank you.

  4. Draeconis
    June 16, 2016 at 9:27 am

    You can rewrite that for one line 🙂

    defaults write com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 5 -int 10 -int 1 -int 11 -int 4 -int 9 -int 2 -int 7

    • SIJ
      July 14, 2016 at 1:03 pm

      Just downloaded 15.24.0 OneNote Update and using your guidance used these 2 lines below in a post install script in munki…..

      /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array

      /usr/bin/defaults write /Library/Preferences/com.microsoft.onenote.mac ONWhatsNewShownItemIds -array-add -int 10 -int 1 -int 11 -int 13 -int 4 -int 9 -int 14 -int 2 -int 7 -int 12

      Works great, many thanks.

  5. December 17, 2017 at 4:31 pm

    Does this work for Office365 Installs

  6. December 18, 2018 at 1:18 am

    Extraordinarily user friendly. Nice work, Microsoft. Outstanding!

    *** ouch ***

    My desk keeps smacking my head.

  7. Neil Goodliffe
    January 31, 2019 at 11:49 pm

    Still new at deploying scripts/plists. We use Lanrev for deployment here, and trying to wrap my head around how to deploy this as a config profile. Any help would be awesome!

  8. stephanie
    June 13, 2019 at 4:33 pm

    Does this work for office 2019 for mac?

  1. No trackbacks yet.

Leave a comment