Windows Vista compatibility presents a challenge to independent software vendors (ISVs) and channel vendors. With a new user interface, new security model and tons of fit-and-finish modifications, it would be smart to look at exactly what's happening under Vista's hood in terms of application compatibility -- and determine how it might affect your products.
What are potential Vista application compatibility problems?
Here are some Windows Vista application compatibility issues for you to consider.
- Internet Explorer 7 rendering and Protected Mode compatibility
- General resource usage and Aero Glass compatibility
- Bridging Vista to applications
User Account Control is a new security feature that keeps users from running with too many security privileges. Briefly stated, users log on -- whether they are power users, ordinary users or administrators -- and are assigned a normal security token. When an action is requested that requires administrative privileges, a logon prompt is displayed and the user must enter credentials. At that time, an administrative security token is assigned to them that allows them to carry out the protected function.
While Microsoft has done its best to make this a minimally intrusive feature, it can have implications on applications you're developing. For one, do you need administrative rights to run your application? Or does your application require administrative access to certain areas of the system periodically? You'll want to make sure UAC doesn't interfere with the normal operation of your program.
If you have a Web application or local application that makes use of Internet Explorer, make sure the revamped CSS rendering doesn't wreck your Web pages. That actually applies to Windows XP clients as well, since IE 7 will be available for XP within the next six months. Additionally, the new Protected Mode --available in Windows Vista -- runs IE in an isolated security setting; so if you use ActiveX controls or other real-time client processing, test with the latest IE betas to make sure it still operates properly.
Aero Glass introduces a number of different resource-usage scenarios, and as such you'll want to make sure your program doesn't kick Aero Glass users -- those users whose computers support the premium Vista effects theme -- out of Glass mode and into an uglier, slightly less functional Aero Basic mode. For example, the current production release of the Sun Java Virtual Machine has this problem and it's quite unattractive.
If it will be too costly to convert applications to function correctly in Windows Vista, consider providing support to bridge technologies. For instance, you may want to run an application within a virtual machine (VM) provided by VMware Player or Virtual PC with a compatible operating system installed on that virtual machine. With the recent cost decreases of each of these products, many organizations are finding it increasingly cost effective to deploy applications within VMs rather than fund expensive software upgrades every time an operating system is refreshed.
How to test Vista application compatibility
If you're interested in running a battery of tests and compatibility comparisons on Windows Vista, you'll want to download the beta version of the Microsoft Application Compatibility Toolkit 5.0 (ACT). According to Microsoft, ACT "assists you in identifying and managing your application portfolio, reducing the cost and time involved in resolving application compatibility issues, and helps you quickly deploy Windows Vista and Windows XP Service Pack 2 operating systems." It's a thorough set of tools for running your application through the various areas of Windows Vista that might break it. While it's not designed specifically for ISVs, it is still a tool you will find useful for application testing. Beta releases for this toolkit come fairly regularly, so you will want to monitor the Microsoft Connect site for fresh downloads.
Also, check out the Windows Vista Application Compatibility Community. ISVs can find relevant information on this portal, including links to the latest automated tools for testing their applications against Windows Vista.
About the author: Jonathan Hassell is an author, consultant and speaker residing in Charlotte, North Carolina. Jonathan's books include RADIUS, Learning Windows Server 2003, Hardening Windows and most recently Windows Vista: Beyond the Manual. His work is seen regularly in popular periodicals such as Windows IT Pro Magazine, SecurityFocus, PC Pro and Microsoft TechNet Magazine. He speaks around the world on topics including Windows administration, networking and security.
This was first published in September 2006