Archive for September, 2015

There are a number of aspects to our Windows 10 corporate branding / look and feel that I have implemented recently with three main changes involved. Its worth mentioning up front that I’m not using a corporate logo or style however you could easily substitute what I have done with your own images to achieve the same outcome.

With that out of the way!

These changes are:

  1. Setting a default lock screen wallpaper that is consistent with the Windows 10 operating system and the Microsoft color scheme.
  2. Removing the default Hero wallpaper that is displayed immediately after a Windows 10 workstation is started prior to logon.
  3. Setting a default desktop wallpaper (where required).

To achieve these changes I’ve used a combination of Group Policy and Operating System Deployment choices with our Configuration Manager 2012 Windows 10 Task Sequence.

Setting the Lock Screen Wallpaper

To implement this you will need to add the following to the Group Policy that is targeting your Windows 10 workstations under Computer Configuration/Policies/Administrative Templates/Control Panel/Personalization.

  1. Set Do not display the lock screen to Enabled (This is not required although in our environment we have chosen to enable this for other reasons)
  2. Set Force a specific default lock screen image to Enabled with a value of c:\windows\web\screen\yourcustomlockscreenimage.jpg

Don’t worry about the file not actually being present at the this location, as we are going to use our Configuration Manager Task Sequence to copy the lockscreen image to the workstation as part of the build process. Alternatively you could copy the image file using a group policy preference or even reference the image to a highly available DFS file share (Although I personally don’t like the idea of this for various reasons).2015-09-28_125040

Now that we have configured our Group Policy we need to create a simple package in our Configuration Manager 2012 environment and add a step to our Task Sequence.

  1. Create a new folder for your package under your source share. I’ve called ours DoJ Windows 10 Branding but its entirely up to you.
  2. Copy your JPEG image to the folder. This image should be formatted correctly for your environment with regards to size. If your using anything other than a solid color, then you may need to have multiple images of various sizes. This blog offers a good way to manage this, but for my blog this is out of scope as I am using a solid color background with a resolution of 3840 x 2160. The color I have chosen is the default blue that is included in Windows 10.
  3. Replicate your new package.
  4. Create a new Run Command Line Task Sequence step called Copy Corporate Branding Lockscreen Image (or similar) and specify the package details as per below.2015-09-28_130411
  5. When you build a workstation now you should now see your custom lockscreen image! Note that there is a small Group Policy bug in Windows 10 which requires you to restart after your Configuration Manager Task Sequence completes. This seems to be related to Windows 10 not applying Group Policy objects even though the SMSTSPostAction variable is set with a restart command.2015-09-28_130743

Removing the Default Hero Wallpaper

I’ve seen quite a few ways of implementing this, but basically it comes down to a registry change which set the value of HKLM\SOFTWARE\Policies\Windows\System\DisableLogonBackground from 0 to 1.

My preference is to do this during the Operating System Deployment process, but again this change could be implemented by Group Policy or as an additional step in your Task Sequence i.e. executing a reg add command or merging a reg file.

I’ve found that using unattend.xml for this process is quite effective and simple. It also has the added benefit of reducing administrative overhead that the other solutions offer.

  1. Open your unattend.xml using Windows System Image Manager and add the following to your specialize pass from the amd64_Micorosoft-Windows-Deployment_neutral component. Please ensure that the order value is 1. In the screen captures my order value is 2 because I am applying an additional registry key change which is not relevant to this blog.2015-09-28_1324262015-09-28_132656
  2. Save your unattend.xml and replicate the package so your Task Sequence uses the updated version.
  3. Now when you deploy your reference image this registry change will be added. Please note that again, you may need to restart your workstation after the Task Sequence has completed for the change to be effective.2015-09-28_134201

Setting a Default Desktop Wallpaper

Again with this change I’ve chosen to leverage Group Policy. We have a small group of workstations that require an enforced background.

To implement this you will need to add the following to the Group Policy that is targeting your Windows 10 users under User Configuration/Policies/Administrative Templates/Desktop/Desktop

  1. Set Desktop Wallpaper to Enabled and specify the location of your image file.

You could add an additional step to your Configuration Manager Task Sequence to copy the image file to c:\windows\web\wallpaper\yourcustomwallpaper.jpg however in my case as its only a small subset of workstations, I’ve pointed the group policy to my Distributed File System.2015-09-28_134423

I hope this blog helps those of you looking to implement some changes to the default appearance of Windows 10.

Cheers

Damon

UPDATE 2:

If you’re having difficulty setting default file associations using the dism import method then you can try the following alternative.

  1. Perform a basic Windows 10 deployment and set your file associations manually as per your preference
  2. Create an xml file of these file associations by running Dism /Online /Export-DefaultAppAssociations:<path to xml file>\AppAssociations.xml
  3. Rename this file to OEMDefaultAssociations.xml
  4. Create a Configuration Manager Package with this file and distribute to your DP’s
  5. Add a Run Command Line step in your Windows 10 Task Sequence which copies the file to c:\Windows\System322017-01-30_145524
  6. Windows 10 will use this xml file when setting default file type associations

UPDATE:

I’ve updated the script I use to Powershell. Process is the same though.

Be aware that a lot of people have reported difficulty in setting file association defaults with them reverting back to their defaults at first login. This seems to be related to an update that was included in the April/May Windows 10 Cumulative Update. There is no fix presently that I’m aware of however some have had the issue and some do not which makes me think its related to the application itself and how its modifying the Windows 10 default file type settings. Hopefully this will either be addressed by developers releasing updated versions of their applications that conform with Microsoft’s expectations or Microsoft releasing an update to address the issue.

  1. Create a ps1 script with the following contents: dism.exe /online /Import-DefaultAppAssociations:$PSScriptRoot\AppAssociations.xml
  2. Copy that script to a package folder with your application associations xml file
  3. Add a Task Sequence step to execute the script

3QNpv-Lo

With Windows 10 now approaching its 2 month anniversary since RTM, I have finally finished the reference image our agency is going to use. Its taken quite a few attempts to get things right so hopefully some of my approaches to implementing solutions to some common issues will save you some time and effort.

Firstly lets establish how I’m creating my reference image. I’m using two Hyper V Virtual Machines running on a solid state drive.

1 x Server 2012 R2 with MDT 2013 Update 1 Build 8298

1 x Server 2012 R2 running a WSUS instance

Then running a pretty standard Build and Capture task sequence with LTISuspend.wsf to allow for some minor changes. With that out of the way – lets talk about how I’m setting my default file associations.

By default Windows 10 has a number of default associations which you may not wish to keep. For example, by default the PDF extension is associated with Microsoft Edge so if your deploying a 3rd party PDF reader, you’re most likely going to want to deal with this. Some other file types you may want to change may include what application is associated with photos and videos as by default these are associated with the built in modern applications. You may also want to change the default browser from Edge to Internet Explorer 11.

You can control file type associations with group policy and there are quite a few blogs already about this. I’ve chosen not to use this approach as it enforces a baseline set of associations and I want my environment to be flexible to allow for variation if needed.

  1. On a reference computer running Windows 10, install all of your standard operating environment applications then set your default programs as per your preference.
  2. Once finished run an elevated powershell instance and  type Dism /Online /Export-DefaultAppAssociations:<path to xml file>\AppAssociations.xml2015-09-24_133139
  3. Next create a new Configuration Manager package that includes this xml file and distribute it to your DP’s. You can edit the file if you need to make further changes. Note that you don’t need to create a program.2015-09-24_133611
  4. Now we need to create two new Run Command Line steps in our Windows 10 Configuration Manager Task Sequence. One to copy the xml file locally to the target workstation and a second to execute the DISM import command. I’ve added these steps to my OSD Results and Branding group section of my Task Sequence. Make sure you disable 64-bit file system redirection otherwise your DISM import command will error out.2015-09-24_135038 2015-09-24_135343
  5. That’s it! You will now have a reference image that has a default set of file type application associations.

I’ve recently finished our companies Windows 10 reference image using MDT 2013 Update 1 to perform the build and capture. Then using Configuration Manager 2012 R2 SP1 CU1 + some hotfixes to deploy the reference image.

There have been a number of issues that I’ve had to find solutions for over the past 8 weeks not withstanding the numerous bugs in the RTM version of MDT 2013 Update 1.

These have included:

  • Setting default file type associations
  • Implementing custom branding such as lockscreen wallpaper and disabling the default hero wallpaper at login
  • Removing selected Windows 10 modern applications
  • Blocking Windows 10 modern applications that can’t be removed with App Locker
  • Creating a default custom start menu layout
  • Pinning default items to the taskbar
  • Group Policy settings, in particular for Edge and Internet Explorer 11 Co-Existence
  • USMT 10 implementation and data migration

Over the next week or two, I will be blogging on these topics and how I’ve implemented a solution to each.

Cheers

Damon