What changes does the PCA make?
It depends on the problem, but any changes it makes are related to how Windows runs the program. No changes are made to the program itself. For example, the Program Compatibility Assistant can resolve conflicts with User Account Control, a new security feature in this version of Windows that can help make your computer safer. Or, it can run the program in a mode that simulates earlier versions of Windows. The changes that Program Compatibility Assistant makes are done automatically, so you don’t need to make them.
You can also attempt to make a program run under Vista manually. Just look in the program’s folder for the *.exe file — usually it is named after the program itself, and is fairly large in size. Right-click the *.exe file and select the "Compatibility" tab to bring up the options for running the program under Vista. These are very similar to the options that XP had for troubleshooting program compatibility, and are as useful sometimes.
To change settings manually for a program, right-click the program icon. Click Properties, and then select the Compatibility tab. You will have the following options to use in trying to get your software to behave under Vista:
This runs the software using settings from a previous Windows version, such as XP. Use this setting if you know that the program was made for a specific older version of Windows.
Run in 256 colors
This setting uses a only 256 colors in the program. Some very old programs only use fewer colors and break if they are offered too large a color palette.
Run in 640 x 480 resolution
This setting tells the program to run only in a smaller-sized window. Try it if the graphics appear jagged or have glitches — likely the program is trying to draw in 640x480 mode but the "larger" resolutions available confuses it.
Disable visual themes
This disables Windows themes on the program. This is where you notice problems with the menus, buttons, or the title bar of the program. It’s the operating system that usually causes the issue, as it tries to draw special "theme" graphics that the older software cannot handle properly.
Disable desktop composition
Ugly as it may be, this turns off transparency and other advanced display features. If the program’s window movement appears erratic or you notice other display problems (such as tearing or glitches), use this option.
Disable display scaling on high DPI settings
This is a more advanced setting. It turns off automatic resizing of programs if large-scale font sizes are used. If your larger fonts are interfering with the appearance of the program, try this setting.
This runs the program as an Administrator, much the same way as you would have in XP. Some older programs require Administrator privileges to run properly. If you are not currently logged on as an administrator in Vista, this option is not available to you.
Show settings for All Users
This option lets you decide which settings will apply to specific users on your computer. This is useful if you have multiple levels of logons or multiple users on your machine.
If you are really interested in learning how to make programs compatible with Vista, or just want to get one troublesome program to play nice, Microsoft has created the Vista Application Compatibility Training download just for you. While aimed primarily at developers, it contains a lot of useful information and is an excellent introduction to the most common Vista compatibility issues you might run across. It is over a gigabyte in size, though, so I recommend that you use Microsoft’s File Download Manager to get it. It looks for Internet Explorer as a default browser to use in the presentation, though, so Firefox users may need to be creative to run it. In an ironic twist, Microsoft also lists the FDM as not being Vista-compatible without a small user change before installing.
Games are the programs that break most easily under Vista, especially the older ones. While some games are coded to follow "official" guidelines, many are not and so cause problems when trying to run under Vista. To help you start out on the road to making games Vista-happy, there are several sites out there that have compiled partial lists of games that do and do not work under Vista, plus other software compatibility listings, such as Games IexWiki Vista-Compatible Software List, or Windows Vista Software Compatibility List.
The final thing you can do, if you have a decent PC setup, is to run your older software inside a Virtual PC. While a major subject on its own, the basic premise of a Virtual PC is to run another PC (and even a different OS) inside the basic structure of Vista. Similar to Apple’s recent ability to run Windows on their MacOSX platform, running a Virtual PC on Vista means that if you simply cannot get an older application to behave under Vista, there is still hope.
By running a Virtual PC inside of Vista, you can keep your older application perfectly happy by fooling it completely; as far as it will be concerned, all it sees is (for example) Windows XP running by itself. The fact that the Windows XP "machine" it sees is itself running INSIDE a Vista machine through Virtual PC is irrelevant. Of course, you will want to have a fairly fast PC to run the miracle that is Virtual PC, but the amazing thing is: it’s free from Microsoft.
The solutions listed above are for the benefit of those who do not want to abandon older software that they are familiar with, or who feel that the costs of upgrading to a Vista-compliant version of a program are too high. Also, there may not yet BE a Vista-compatible version of a program, so making older software "play nice" with Vista is quite useful. As a bonus, you’ll be able to do what hundreds of programmers at Microsoft have been unable to do, as yet: get your software to work with Vista. Of course, they caused the problems in the first place, but that’s what you get every few years when upgrading an operating system as widely-used as Windows. Hopefully the next operating system from Microsoft (code-named Vienna) will greet an older software install with the message "Oh, you have older software, let me make it run properly" and not "Please buy an upgrade."
Now THAT would be both user-friendly AND compatible with anyone’s tastes.