I tried to figure out how to manage compatibility settings for some older programs in an automated way. This Super User question How can I set the compatibility mode for an executable from the command line? already helped a lot pointing onto the registry key being used for compatibility settings.
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
Sadly, there is one tiny detail remaining unanswered so far. I tried to figure out what changes in application's property dialogue does by inspecting the related registry value, and it seemed so simple! But I'm irritated by the tilde char preceding the known compatibility switches, for example:
~ WINXPSP3
~ MSIAUTO
~ RUNASADMIN WINXPSP3
I tried searching the web for it but without success. I found this ~ flag being used in Windows 8.1 (and Windows 8), but not in earlier Windows versions.
Does anyone know more about it?
- When is it used?
- What does it mean?
- Is there any reliable reference?
Most likely, the ~ (tilde) is indeed for Windows 8. I've noticed, in similar situations, on Windows 7, the # (hash) character (followed by space).
来源:https://stackoverflow.com/questions/27041372/meaning-of-the-tilde-in-compatibility-settings-values-of-the-windows-8-1-registr