Difference between revisions of "Techwiki:AppCompat"

From ReactOS Wiki
Jump to: navigation, search
m (tech notes (again))
m (Per application settings: fix typo)
 
Line 5: Line 5:
  
 
=== Per application settings ===
 
=== Per application settings ===
For each program on the system that has been configured with AppCompat settings, there is one TEG_SZ value in the 'Layers' subkey of the AppCompatFlags key.
+
For each program on the system that has been configured with AppCompat settings, there is one REG_SZ value in the 'Layers' subkey of the AppCompatFlags key.
 
The name of the value is the DOS path of the application, the value contains the settings as a space speparated list.
 
The name of the value is the DOS path of the application, the value contains the settings as a space speparated list.
 
* Compatibility version: WIN95 WIN98 WINNT4SP5 WIN2000 WINXPSP2 WINXPSP3 WINSRV03SP1 WINSRV08SP1 VISTARTM VISTASP1 VISTASP2 WIN7RTM
 
* Compatibility version: WIN95 WIN98 WINNT4SP5 WIN2000 WINXPSP2 WINXPSP3 WINSRV03SP1 WINSRV08SP1 VISTARTM VISTASP1 VISTASP2 WIN7RTM

Latest revision as of 21:57, 13 July 2018


Registry storage

The AppCompat settings are stored in the registry in the key 'HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags'.

Per application settings

For each program on the system that has been configured with AppCompat settings, there is one REG_SZ value in the 'Layers' subkey of the AppCompatFlags key. The name of the value is the DOS path of the application, the value contains the settings as a space speparated list.

  • Compatibility version: WIN95 WIN98 WINNT4SP5 WIN2000 WINXPSP2 WINXPSP3 WINSRV03SP1 WINSRV08SP1 VISTARTM VISTASP1 VISTASP2 WIN7RTM
  • Compatibility flags: 256COLOR 640X480 DISABLETHEMES DISABLEDWM HIGHDPIAWARE

Windows allows any order of these settings. If the OS version is defined twice, the Compatibility tab in the application properties will show the OS that correspeonds with the last entry.

Read/Write with SdbGetPermLayerKeys/SetPermLayerState.

See https://git.reactos.org/?p=reactos.git;a=blob;f=reactos/dll/shellext/acppage/CLayerUIPropPage.cpp;hb=dc6680a387a15ad4ed347c8e82454a91d2171c49#l65 for a list of modes that can be set with the 'Compatibility' tab