View Single Post
15 Mar 2009  

Windows Se7en Ultimate Beta x86 Build 7057
Windows 7 to officially support logon UI background customization

Windows 7 to officially support logon UI background customization

As you probably know, Windows 7 build 7057, a build recently leaked to the public, sports a new (yet ugly) login UI background. Delivering on the most-customizable promise, Windows 7 now supports the ability to load images into the background of the login screen without the use of third-party software or manual hacks.

Although this functionality was designed for OEMs in mind, it is pretty easy to turn on and off using regedit and some images lying around your hard drive.

First, a check is made to determine if the customization functionality is enabled or not. More precisely, a registry value named OEMBackground in the HKLM\Software\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background key is checked. Its data, of Boolean type, defines whether or not this behavior is turned on, i.e. 1 for enabled, 0 for disabled. Set this to 1.

Afterwards, if customization is enabled, the primary monitor’s screen height and width are retrieved via calls to GetSystemMetrics. These values are used in the computation of the screen width (w)/height (h) ratio. For example, my desktop resolution is 19201200. The ratio, computed by the division of w/h, is 1.6:1.

The result of this computation is looked up in an internal table that drives what image to load on disk. Although I don’t have a large enough monitor to test, it appears resolutions higher than 19201200 will force the loading and zooming of an image of closest compatibility (i.e. same ratio, smaller image).

As this is an OEM feature, images are derived from %windir%\system32\oobe\info\backgrounds. The following files are supported in this folder:

* backgroundDefault.jpg
* background7681280.jpg
* background9001440.jpg
* background9601280.jpg
* background10241280.jpg
* background1360768.jpg
* background1280768.jpg
* background19201200.jpg
* background1440900.jpg
* background16001200.jpg
* background1024768.jpg
* background1280960.jpg
* background12801024.jpg

The backgroundDefault.jpg image is loaded and stretched-to-fit when a resolution/ratio-specific background cannot be found. The other resolution/ratio-specific files are self-explanatory. If the background cannot be loaded (e.g. image physically too large, incorrect ratio, etc.), the default SKU-based image is loaded from imagesres.dll. You’ll see a Windows Server-themed grayish background in there, too, suggesting this functionality is not specific to client SKUs.
Keeps getting better.

SEE ALSO: Log On Screen - Change
My System SpecsSystem Spec