Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

Setting DPI in unattend.xml may not work if region settings are changed during OOBE


View products that this article applies to.

Symptoms

Consider the following scenario:
  • You are an OEM or System Builder that is building a Windows 8 image for deployment.
  • In the unattend.xml, you specify a custom DPI setting larger than 108 as the default to be used by Windows using the following setting:

    <Display><DPI>144</DPI></Display>
  • During OOBE a user makes changes to settings at the Region and Language screen.

In this scenario, when the user boots to the desktop the DPI will be set to 120, which also corresponds to "Medium - 125%" in the Control Panel Display settings.

↑ Back to the top


Cause

This behavior is due to legacy Windows code that prevented a DPI of greater than 108 being used to ensure optimal performance and display in Windows.

↑ Back to the top


Resolution

To work around this issue, the setupcomplete.cmd scipt can be used to manually set the DPI in the registry to the desired number after Windows Setup completes. Using 144dpi as an example, the registry entry that would need to be set and put in the setupcomplete.cmd is:

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontDPI]
"LogPixels"=dword:00000090

More information on the setupcomplete.cmd script can be found using the link below:

Add a Custom Script to Windows Setup
http://technet.microsoft.com/en-us/library/cc766314(WS.10).aspx


↑ Back to the top


Keywords: kb

↑ Back to the top

Article Info
Article ID : 2801645
Revision : 1
Created on : 1/7/2017
Published on : 1/15/2013
Exists online : False
Views : 408