Customizing Windows 7’s logon screen and user picture with Group Policy

 

How can we get our logo on here?

Is what my boss’s boss asked me right after I installed Windows 7 on his machine. Being one of the first 5 people in the office with a Windows 7 workstation and a pioneer in my rollout, I quickly told him: of course! … then I got to work on the best way to accomplish that.

Prep work

The first thing I did was create a location on my network accessible by all authenticated users, this is where the custom artwork will live.

The user picture

Is a 128×128 pixel bitmap, which our logo happens to fit nicely into, so I grabbed the graphical part of our logo and shrunk it to fit into a square 128×128 pixel bitmap, saved it to its home on the network and moved on to the background images.

The background images

Windows 7 supports multiple files, a default file called backgroundDefault.jpg and 12 other files with the resolutions appended to the default name (ie. background1920x1200.jpg). The system will determine which file to use (if the file with your screen resolution exists) in %windir%\system32\oobe\info\backgrounds (can be created if it doesn’t exist). If you omit an explicitly sized file for a screen resolution, the default file will be stretched to fit your resolution. One final note, images must be less than 256kb in size. The list of supported resolutions is below:

background768x1280.jpg
background900x1440.jpg
background960x1280.jpg
background1024x1280.jpg
background1280x1024.jpg
background1024x768.jpg
background1280x960.jpg
background1600x1200.jpg
background1440x900.jpg
background1920x1200.jpg
background1280x768.jpg
backgroundDefault.jpg

 

Once I had the background images for the resolutions that we have in the office, I saved those files to a subfolder in the network location I created previously and launched the Group Policy Management console.

Group Policies

Now that we have our resource files on the network we just need to tell Group Policy what to do.

Create a new Group Policy Object in an OU that contains the computers you want to customize and make the following changes to the policy.

From the Computer Configuration –> Policies –> Administrative Templates: enable Apply the default user logon picture to all users (from Control Panel/User Accounts) and enable Always use custom logon background (from System/Logon).

From Computer Configuration –> Preferences –> Windows Settings –> Files: add a new File item with a target path of %programdata%\Microsoft\User Account Pictures\user.bmp, from General make the source the 128×128 user picture we saved on the network (use its UNC path), you can leave everything else with its default setting but make its Action Replace.

From Computer Configuration –> Preferences –> Windows Settings –> Files: add a new File item with a target path of %systemroot%\System32\oobe\info\backgrounds\ (make note of the trailing \, it is required to indicate the target is a directory, not a file), from General set the source file(s) to be the directory we saved (use its UNC path) but append \* to the filepath, to indicate that you want to copy all the files from this subdirectory to the target. As with the previous item, you can leave everything else with its default values but make its Action Replace.

From User Configuration, leave everything blank.

Once done, your output should look like the screenshots below (replacing \\domain.local with your own domain’s FQDN):

 

 

Further reading: Rafael Rivera’s Within Windows post was a valuable point of reference for this project.
  1. One quick correction….if you specify the resolution in the "background" filename, you do NOT want to put the word "default" in there. For example, you want your filenames to be:
    "backgroundDefault.jpg"
    "background1600x1200.jpg"
    "background1280x1024.jpg" etc. etc.

    Otherwise, this is a great write-up on this process. Thank you especially for taking the time to do the group policy summary screenshot. It helped me deploy a custom background within my enterprise and as long we run supported resolutions, the picture is not distorted by the "stretching".
    Great job!
    Curt

  2. Thanks for this article, explained it really well and I was able to follow it nicely!

    I was having problems with the logon backgrounds at first, however this was related to the delay before the policy is applied. Just a note to others, you may need to reboot the clients a few times before it registers. I stored the backgrounds within the netlogon folder to have them available to all sites around the domain.

  3. excellent work, thanks for making my life easier :)

  4. Logon User Icon not displaying - pingback on March 21, 2013 at 10:40 am
  5. Is there an easy way to just run this once? As it might slow down the log on process if it needs to copy those files every time?

  6. This replaces the whole background on login screen. How to only put the logo on default login background.

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackbacks and Pingbacks: