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
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
How-to: Elevate - Run with elevated permissions (As Admin).
HighDpiMode - Enum