How-to: App compatibility

To run old applications in Windows 10 it is possible to set the compatibility options under File Properties ➞ Compatibility.

This is a per user setting stored in the registry, so it will only work for executables on the local hard drive not on a network drive. It also will not work for protected files delivered as part of the OS such as notepad.exe. It is possible to make a copy of a system file and set the properties on that, or to create a shortcut and set the shortcut properties.

All of the settings in the Compatibility tab can also be set directly via the registry:

HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
or for all users:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

It is important to specify the options in the correct order, the sequence in which the options are displayed in the compatibility tab.

Syntax Windows 10:
   ~ [Privilege Level] + [Settings (value(s) with space between)] + [Compatibility Mode (only one)]

Privilege Level (pick only one or none) :

    ELEVATECREATEPROCESS  = Launch a child program as Administrator  (Vista only)  
    RUNASADMIN            = RUN AS ADMINISTRATOR

Settings:

    256COLOR     = Reduce colour mode (8-bit 256 colours)
    16BITCOLOR   = Reduce colour mode (16-BIT 65536 colours)
    640X480      = Run in 640X480 Resolution
     
    PERPROCESSSYSTEMDPIFORCEOFF  Override system DPI @Windows logon
    PERPROCESSSYSTEMDPIFORCEON   Override system DPI @Application start
    HIGHDPIAWARE                 Override High DPI Display Scaling - performed by: Application
    DPIUNAWARE                   Override High DPI Display Scaling - performed by: System
    GDIDPISCALING DPIUNAWARE     Enhanced Override High DPI Display Scaling - performed by: System

    DISABLEDXMAXIMIZEDWINDOWEDMODE   Disable fullscreen optimizations.
    TRANSFORMLEGACYCOLORMANAGED      Use legacy display ICC colour management.

The High DPI settings were added to Windows between 2015 and 2017 (15002+ and 17063+)

Compatibility Mode (pick only one) :

    WIN95
    WIN98
    WINXPSP2
    WINXPSP3
    VISTARTM
    VISTASP1
    VISTASP2
    WIN7RTM
    WIN8RTM

To Remove Compatibility Mode Settings for an Application, delete the relevant registry key for the application from \Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers

Examples

Set the HIGHDPIAWARE for demo.exe for the current user:

REG.exe ADD "HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /V "%ProgramFiles%\demo\demo.exe" /T REG_SZ /D "~ HIGHDPIAWARE" /F

Set the HIGHDPIAWARE for demo.exe for all users:

REG.exe ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /V "%ProgramFiles%\demo\demo.exe" /T REG_SZ /D "~ HIGHDPIAWARE" /F

To set Enhanced Override High DPI Display Scaling, use the following in the Value data field, notice the position of the double quotes:

"~ GDIDPISCALING DPIUNAWARE"

To run a program in Windows XP compatibility mode for a program running under Windows 10 and also Run as Admin (elevate):

"~ RUNASADMIN WINXPSP2"

To run a program in Windows 7 Compatibility mode, and Reduced Colour mode 16-bit, and also Run as Admin (elevate):

"~ RUNASADMIN 16BITCOLOR WIN7RTM"

“It’s a poor sort of memory that only works backwards” ~ Lewis Carroll

Related commands

How-to: Elevate - Run with elevated permissions (As Admin).
HighDpiMode - Enum


 
Copyright © 1999-2025 windevcluster.com
Some rights reserved