Monday, 11 April 2011

How To Deploy Office 2010 from System Center Configuration Manager

Hi Everyone,

I'm confident you will be considering the roll out of Office 2010 soon. If your like me, I need to roll out Office 2010 to over a 1000 workstations. I thought I would give you my real world experience on a simply approach:

The are five steps in this process the include:
  • Customising Office 2010
  • Creating the Package and Program
  • Copying the Package to your Distribution Points
  • Creating an Active Directory Security Group and Collection
  • Creating an Advertisement and Assigning it to the Collection 

In your testing environment you may want to speed the process up. I'll show you how to force a client to get the package straight away and get a report on the outcome of the advertisement.

How To Customise Office 2010

  1. Download your Office 2010 install files and place it in your package source directory.


  2. Run setup.exe /admin from the command prompt. This will allow us to create a MSP file which we will save into the updates folder.


    It is important to note you can only run setup.exe /admin for Office 2010 64 Bit version from a 64 bit platform. 

  3. Select your product. In this case it is Microsoft Office Professional Plus 2010 (64bit)



  4. Complete your desired customisation. In this example, I will be completing the following: Setting the organisation name, setting licensing and user interaction (suppress all notifications to allow for a silent install) and removing previous installations.


    License information
    Removing previous installations

  5. Go to File => Save As and save it in the Updates folder as Setup.MSP.
    Office looks at this location for updates and customisation files automatically. You can put Service Packs in this location too and they will be automatically installed during the Office install process.
Your customised Office 2010 package is now ready for SCCM.

Creating Package & Program
  1. Create a New Package



  2. Fill out the General Details



  3. Set the Data Source Details and Options



  4. All other options leave as default

  5. Create a New Program



  6. File out the details as below.



  7. You can set program dependencies. In this example I will only install Office 2010 on Windows 7 x64 machines and the install process will timeout after 120 minutes.



  8. You can set the environment. Since it is a silent install I will install it whether or not a user is logged on, run with administrative rights and allow users to interact with the program.



  9. You can set some advanced features like running a program first. In this example I have left it as default.



  10. Leave the other options as default. Once completed you should see the new program

This completes creating the package and program

Copying the Package to your Distribution Points
  1. Add a New Distribution Point



  2. Click next at the Welcome Screen

  3. Select your Distribution Points and click Next



  4. Under Package Status => <SiteCode> you can see the state of your package on each Distribution Point. It will state Installed once the package has completed copying.


    Package Snap in

    List of DP's for this Package

This completes coping your package to your Distribution Point

Creating an Active Directory Security Group and Collection
  1. Within Active Directory create a security group. Call it SCCM - Deploy Microsoft Office 2010 Professional Plus x64.



  2. Add the computers you wish to deploy Office 2010 too. In this example I will deploy it to MULLER-TEST



  3. Within SCCM create a new collection, call it Deploy Microsoft Office 2010 Professional Plus x64



  4. Fill out the General Details and click the Next button



  5. Create a new membership rule by clicking on the SQL button.



  6. Limit the Collection by your Active Systems Collection Group, give the query rule a name and click on Edit Query Statement.



  7. Click on Show Query Language


  8. Add the following SQL statement. Change the domain to your domain
  9. SELECT 
  10. SMS_R_SYSTEM.ResourceID
  11. ,SMS_R_SYSTEM.ResourceType
  12. ,SMS_R_SYSTEM.Name
  13. ,SMS_R_SYSTEM.SMSUniqueIdentifier
  14. ,SMS_R_SYSTEM.ResourceDomainORWorkgroup
  15. ,SMS_R_SYSTEM.Client 
  16. FROM 
  17. SMS_R_System 
  18. WHERE SMS_R_System.SystemGroupName = "CHANGE ME\\SCCM  - Deploy Microsoft Office 2010 Professional Plus x64"

  19. Click on OK twice and next three times and your collection is created.

  20. Depending on your discovery methods will depend on how long it will take to display in the new collection. You can force it by doing an Active Director Security and System Group Discovery. Once SCCM has discovered update the collection and you will see the computer in that collection

This completes creating an Active Directory Security Group and Collection

Creating an Advertisement and Assigning it to a Collection 
  1. Add a New Advertisement



  2. File out the General tab details. Select the Package you created, the Program will fill itself and select the collection you created



  3. Select the schedule options. In this example I have set a deadline, enabled wake on LAN (Requires Out of Band Management), Ignore maintenance windows, and not to rerun if the program fails



  4. Set the Distribution Point settings. In this example the client downloads the package to their cache.



  5. Set user Interaction. In this example, I allow users to interact with the application to run it when they want to. If they don't run it, the application will install at the deadline.



  6. Click Next twice and you advertisement is created.

  7. You will now see the new advertisement

This completes Creating an Advertisement and Assigning it to a Collection

Your computer will get the new advertisement when it reports pack to your SCCM Server. To force the process follow the below instructions.

Force A Client To Retrieve An Advertisement

  1. Open the Configuration Manager console located in the control panel on the client


  2. Click on the Actions tab, select Machine Policy Retrieval & Evaluation Cycle and select Initiate Action


  3. The SCCM agent will appear in the bottom right hand corner. Depending on how you advertised the application will depend on the icon. Below are the three possibilities that will appear. I set a deadline so the middle will appear, it will state an application will be installed in x amount of time.



  4. To see the progress on the advertisement run the report All Advertisements for a specific collection. It will list the current state of the advertisement. 

Moving From Office 32 Bit To Office 64 Bit

If you’re planning to move from 32 bit to 64 bit then you need to remove all versions of 32 bit first. In my case I needed to remove Microsoft Office 2007 Professional and a few other applications.

Follow these steps to complete this task:
  1. Create a file in Pro.WW called SilentUninstallConfig.xml.

  2. Add the following details to the file and update your Distribution Points

    <Configuration Product="Pro">

    <Display Level="none" CompletionNotice="no" SuppressModal="yes" AcceptEula="yes" />

    <Setting Id="SETUP_REBOOT" Value="Never" />
    </Configuration>

  3. Create a new program in your Office 2007 package with the following settings



    The command line is setup.exe /uninstall Pro /config  Pro.WW\SilentUninstallConfig.xml

  4. Change any requirements settings. In this example, it will only run on Windows 7 x64



  5. Change any environment settings. In this example, it will run whether or not a user is logged on and runs with administrative rights



  6. Change any advance settings. In this example, it will suppress program notifications.



  7. Hit next three times

  8. Create a Task Sequence that removes your applications and then installs Office 2010 Professional Plus x64.



  9. In Options for the task, check to see if the following register exists. This way it will only try an remove it if it is installed.
    Software\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{90120000-0014-0000-0000-0000000FF1CE}


  10. Advertise this instead to your collection and your set to go. Set the Advertisement to only download content if required. This way it will not download Office 2007 if it is not installed.
There is more then one way to skin a cat. In this example, I have set a deadline and advertised it to a collection that is a Security Group. This is the best fit for our current requirements because:

  • The Service Desk have an easy solution to install Office2010, just by adding the computer into a Security Group.
  • They do not need to know anything about the SCCM console.
  • They can tell the user they will get the application within two hours.
  • We don't need to install it on the 1000 workstations yet.

When management decide to deliver Office 2010 to all systems we could remove the deadline and advertise it to all active systems. If we remove new notifications it would be a self service. The user would see the application under programs and features and install it when they want.


Self Service


We could also set a deadline from one month of advertisement date and remind them every second day. This way they have a month to install before it installs itself.

I hope you have found this blog helpful, please leave a comment or question if you have. 

















8 comments:

  1. thanks for the post, we use ManageSoft and this documented procedure is very helpful

    ReplyDelete
  2. Thanks for the feedback. If you would like to see any others let me know

    ReplyDelete
  3. I have some questions on your task sequence. For your removal tasks, what is in your package and how are you doing the removal?

    What will you do if Office was installed by a different MSI which resulted in a different registry key (GUID) that you are not aware? The condition on your task step might make SCCM believe that Office may not be installed because you only specify on registry key.

    ReplyDelete
  4. Hi there,

    The package is the package I used to install the application.

    The package has two programs, one to install and one to remove. I added the file SilentUninstallConfig.xml to the package and call this to uninstall the application.

    My task sequence checks for all versions in my network. For example, if I had Office 2007 Enterprise in my environment I would just include it. No Big deal. A quick SCCM report tells me all versions on my network.

    Hope this answers your questions.

    ReplyDelete
  5. Hi Blair, not sure, but I think there's a small flaw in your deployment logic at the Office 2010 install stage. You've created your program so that it installs with admin rights whether the computer is logged on or not, but also allowed user interaction.
    In the past when I've created a program that installs when the computer is not logged on but which permits user interaction I've found that SCCM refuses to install when the computer is in the logged off state. This is because it wants to let the interactive user have access to the install, but because the machine is logged off there is no interactive user and that breaks the policy of the program. The fix there is to only allow install when the computer is logged in I suppose.
    Great post though, especially with your use of the task sequence, nice!

    ReplyDelete
  6. Thanks Nickc,

    I just looked at my deployment and I don’t have that ticked. I’ve only ever seen one program that had to be run in interactive mode and that was the Citrix Receiver updater and it was only to remove it. I always use task sequences when I can as I find the results without them a bit flaky

    ReplyDelete
  7. This comment has been removed by the author.

    ReplyDelete
  8. Hi Blair

    Thanks for your useful post. In my case i want to install office 2013 and uninstall office 2010 automatically. I did your steps from 1-5 to customize office 2013 and I have create a file in Pro.WW called SilentUninstallConfig.xml.

    What I need now, is how to do a batch file to combine between installing office 2013 with the msd file + and removing office 2010 with the config.xml.

    Thanks
    regards

    ReplyDelete