We've seen a number of people attempt to install Visual Studio 2010 in compatibility mode on Vista and Windows 7. This results in strange behavior, like setup not installing on Vista/Windows 7 and resulting in messages like: Windows XP SP2 is not installed.
There are 3 ways to enter compatibility mode:
1. Find the Exe, right click on it and choose the properties. Then go to the compatibility tab. You can specify older Operating systems there.
2. On Windows 7, find the Exe, right click on it and choose “Troubleshoot compatibility”.
3. After executing an application, which returns non-0, then you are prompted to re-run in compatibility mode.
Running in compatibility mode for many applications solves the issue of allowing your favorite application to continue running even when your application stops working natively.
Visual Studio installs many prerequisites and companion products so you don’t have to search for them and hope that they will work together. One of things we do for our customers is detect the operating system and architecture you have installed and then install different sets of packages based on what the OS is.
When running in compatibility mode, one of the things that happens is that the version of the Operating system is returned masking the real operating system version, so the program believes that it is using a different Operating system than it actually is using.
What results is that our code path might go down a XP SP2 when installing on Vista, which results in package installation failure or blocks, because some packages target a very narrow band of operating systems.