Making existing applications work for Vista is a big job. Microsoft is keeping track of each application that passes its bar and is providing weekly updates through its Knowledge Base. But this obviously doesn't suit everyone.
Take, for example, the National Institute of Standards and Technology (NIST), part of the Department of Commerce, which has decided to ban Windows Vista -- for now -- from its internal computing networks. Or the U.S. Department of Transportation and the Federal Aviation Administration, both of which have also decided to impose a temporary blackout on Windows Vista.
Besides grabbing attention, such a ban puts a focus on Vista's support of current and legacy applications. Vista contains a series of changes in the way it supports applications (after all, Microsoft performed a rewrite of all the Windows code for Vista). In some cases, these changes are system-wide -- in others they affect specific areas of application operation. In both cases, they can break applications.
Luckily, there are a number of solutions as well:
Problem: The version number for Windows has changed -- Vista is number 6. While this occurs each time a new version of Windows is released, it will affect applications because some apps check version numbers at installation, others during operation, and yet others during both installation and operation.
Solution: Installation logic is easy to modify if you have the right tools. Software packaging tools such as Altiris Wise Package Studio and Macrovision AdminStudio let you edit version numbers both in standalone installations and in installations which are integrated with the Windows Installer service. Changing the version numbers when an application is running is more difficult because you would normally need to modify the application's code, but you can also run the application in one of the many compatible modes Vista supports.
Problem: The 64-bit or x64 versions of Windows Vista don't support 16-bit code. In fact, while x64 editions of Windows support 32-bit applications as well as native 64-bit applications, they no longer support any 16-bit code at all.
Solution: Several 32-bit applications still rely on 16-bit installers; in these cases, x64 editions of Windows XP, Windows Server 2003, and Vista will automatically convert these installers to their 32-bit equivalents during installation.
(If an application is designed as a true 32-bit application, it will work well on x64 Vista and in many cases, work even better than on x86 or 32-bit editions of Windows. That's because Vista x64 breaks the 4GB memory limitation x86 systems face and grants more resources in general to applications.)
However, 16-bit applications will not install at all on x64 versions of Windows.