Keeping up with the Vistas of this world

As anyone who likes to live on the bleeding edge of technology knows, you just have to bear with the many bumps on the road of brand-new technology. Inevitably, new technology will push the old out of the way on that very road. But sometimes the old need not be discarded and forgotten as soon as the new arrives on the scene.

With the release of Microsoft’s new Vista operating system, some older software will not behave as it should on the new OS. Even programs made just a year ago can break or go buggy under Vista. The new security architecture defends Vista against malware as well as new video driver architecture.

In the case of games, the problem of compatibility becomes even more apparent. To maximize performance, software code in a game is often tweaked or written in ways the creators of the operating system could not anticipate. This means that when a user runs a game in a newer OS environment, such as Vista, unpredictable things can happen that will cause a game to crash and sometimes even freeze the computer, resulting in a blue-screen of death.

Time, some say, heals all wounds. That’s what is going to happen with the Vista software compatibility. Software manufacturers will eventually release updates and patches for their programs to make them more compatible with Vista. Yet some older programs, beloved as they are, will be too old for a company to bother with a patch. This would relegate your prized copy of Nascar Racing 2003 to the graveyard. It won’t run on under Vista at all. Then again, Starcraft works just fine. Some well-written older programs surprisingly behave nicely under Vista.

Windows Vista

Fortunately, Microsoft realized this might become a problem as far back as Windows XP. It included some limited functions to let older programs (even some DOS ones) run under XP with some success. Vista expands on this idea with even more compatibility options, all designed to allow a more graceful transition for software owners migrating up from XP.

If you find a program is behaving badly under Vista, you can attempt to fix it yourself. Vista has a utility called the Program Compatibility Wizard. Click the Start button, Control Panel, then Programs, and then select ‘Use an older program with this version of Windows’. The wizard will allow you to select from a list of programs on your PC. It is not recommended that you use the PCW on older antivirus programs, disk utilities, or other system programs. Here is a summary of Microsoft’s information on the PCW:

Program Compatibility Assistant in Vista

What is it?

The Program Compatibility Assistant detects known compatibility issues in older programs. After you have run an older program in this version of Windows, it notifies you if there is a problem and offers to fix it the next time you run it. If the compatibility issue is serious, the Program Compatibility Assistant might warn you or block the program from running. If that happens, you’ll have the option to check online for possible solutions.

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:

Compatibility mode

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 × 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 640×480 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.

Privilege level

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 Mac OS X 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 both Vienna and Windows 7) 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.