We recently upgraded our SCCM environment from 1511 to 1606. The new ConfigMgr version requires an updated console. Since Microsoft System Center Configuration 1602 there has been an automatic update system for ConfigMgr Console. This however requires administrative permissions and prompts for elevation when ConfigMgr Console is being started. As we have many administrators who do not have administrative permissions to their workstation and very limited permissions to SCCM, we needed a way to distribute the new console version to their workstations.
Distributing the Console is quite straightforward. Installation files for the new Console are located on the Site Server inside a subfolder in the installation directory of Microsoft Configuration Manager (For example: C:\Program Files\Microsoft Configuration Manager\Tools\ConsoleSetup).
Creating the application for ConfigMgr Console 1606
There are plenty of blog posts and articles on how to create and deploy an application, so this post will only cover the arguments and changes required to get the console deployed.
Copy all of the files from the site server folder C:\Program Files\Microsoft Configuration Manager\Tools\ConsoleSetup to a network folder and create an application with content location pointing to the copied files.
Install / Uninstall arguments for ConfigMgr Console 1606
Create an application with install arguments
ConsoleSetup.exe /q EnableSQM="0" DefaultSiteServerName="<FQDN of Site Server>" TargetDir="%ProgramFiles%\Microsoft Configuration Manager\AdminConsole"
And specify uninstall arguments
ConsoleSetup.exe /uninstall /q
More about the arguments of the ConsoleSetup.exe
Detection Method
As the detection method I used Setting Type: File System with the following specifications.
Path: %ProgramFiles(x86)%\Microsoft Configuration Manager\AdminConsole\bin
File or Folder Name: Microsoft.ConfigurationManagement.exe
The file system setting must satisfy the following rule to indicate the presence of this application: Version equals 5.0.8325.1000
Supersedence
All of our ConfigMgr Consoles have been installed with these detection methods and install arguments, so I configured the installation to supersede the old console version with option “Uninstall”.
KB3184153 and updating the console
KB3184153 updates the console version once again, but the binaries found from the Site Server Tools-directory are not updated. ConsoleSetup.exe will still install the version 5.0.8325.1000. When launching up ConfigMgr Console the update is installed with the following command:
C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole\bin\AdminUI.ExtensionInstaller.exe SiteServerName=<site server FQDN> ApplyConsoleUpdate
I tried creating an application which runs the forementioned command, but without success. I then found the corresponding MSP-file which patches the console from the site server here:
C:\Program Files\Microsoft Configuration Manager\bin\i386\ConsoleUpdate\configmgr1606-adminui-kb3184153-i386.msp
I copied this to our file share and created an application of it.
Install / uninstall arguments for KB3184153
Installation Program: msiexec.exe /p "configmgr1606-adminui-kb3184153-i386.msp" /qn
Uninstall Program: msiexec.exe /X {669D8708-D6AF-47EF-949E-83E651CEDC7A} /qn
Uninstall string uninstalls the whole ConfigMgr Console 1606.
Detection Method
Detection rule is similar to the Console Version 1606 deployment, except the value for console version changes to 5.0.8412.1205. So the detection method in whole would be like this:
Setting Type: File System
Path: %ProgramFiles(x86)%\Microsoft Configuration Manager\AdminConsole\bin
File or Folder Name: Microsoft.ConfigurationManagement.exe
The file system setting must satisfy the following rule to indicate the presence of this application: Version equals 5.0.8412.1205.
Dependencies
As the patch cannot be installed to a workstation which does not have SCCM Console version 1602 or later installed, we need to create a dependency for it. Create a dependency for the KB deployment with SCCM 1606 AdminConsole and select Auto Install.
Deploying ConfigMgr 1606 with KB to clients
Now that we have both applications ready for deployment we can deploy the console to our workstations. As Configuration Manager does not have any system for running post-install steps I decided to deploy only the ConfigMgr Console KB to workstations. Because all of our administrative workstations do not need ConfigMgr Console, I really like the possibility to deploy software as available to workstations with a mandatory update time to those which have superseded application installed. If the deployment is run on the workstation it will do the following:
1. Remove the superseded version
2. Install base version of ConfigMgr Console 1606
3. Apply KB patch to the ConfigMgr Console 1606
Some notes:
- As the ConfigMgr Console KB Application has uninstall string specified it can be later on superseded with a new version and uninstall will work.
- Users can still uninstall the console if they wish to do so
Related stuff
We used this great guide to upgrade our environment:
https://www.systemcenterdudes.com/step-by-step-sccm-1606-upgrade-guide/
With this posting frequency the next post will be up on 2019. Or if I get an inspiration sooner.