Microsoft Surface Fix Display Scaling

Posted on Thu 15 June 2017 in Microsoft

Fix the Microsoft Surface Display Scaling

The oh-so lovely (sometimes) Microsoft Surface books have what appears to be a 3k screen. When using remote desktop, the display will scale to that of the remote computer, which is usually running a 1920x1080 HD display. 3K does not scale well to HD. And visa versa.

You can overide the display settings using a .manifest file and registry key. Literally telling mstsc.exe to foget it's default settings and use the ones you specify.

Create a Manifest File

Copy and paste the below into a file, call it mstsc.exe.manifest

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">

<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.Windows.Common-Controls"
      version="6.0.0.0" processorArchitecture="*"
      publicKeyToken="6595b64144ccf1df"
      language="*">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>

<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.VC90.CRT"
      version="9.0.21022.8"
      processorArchitecture="amd64"
      publicKeyToken="1fc8b3b9a1e18e3b">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
  <security>
    <requestedPrivileges>
      <requestedExecutionLevel
        level="asInvoker"
        uiAccess="false"/>
    </requestedPrivileges>
  </security>
</trustInfo>

<asmv3:application>
  <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
    <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
  </asmv3:windowsSettings>
</asmv3:application>

</assembly>

Save that file to C:\Windows\System32\ - this should be the same location as mstsc.exe (remote desktop client)

Create the regisrty key

• Press  Windows Button + R, type “regedit”, and then click OK.
• Navigate to the following registry subkey:
• HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > SideBySide
• Right-click, select NEW > DWORD (32 bit) Value
• Type PreferExternalManifest, and then press ENTER.
• Right-click PreferExternalManifest, and then click Modify.
• Enter Value Data 1 and select Decimal.
• Click OK. Exit Registry Editor.

Reboot & Test

A reboot is neccessary. Once done the new registry key will load. When you load the remote desktop client next, it will find the .manifest file and use it.

alt text alt text