Using the Application Compatibility Toolkit (ACT)

Applies To: Windows 7, Windows Vista

The Application Compatibility Toolkit (ACT) enables software developers, independent software vendors (ISVs), and IT professionals who work in a corporate environment to determine, before rolling out within the organization, whether their applications are compatible with a new version of the Windows® operating system. ACT also enables such individuals to determine how an update to the new version will impact their applications.

You can use the ACT features to:

  • Verify your application's, device's, and computer's compatibility with a new version of the Windows operating system, including determining your risk assessment.

  • Verify a Windows update's compatibility, including determining your risk assessment.

  • Become involved in the ACT Community, including sharing your application assessment with other ACT users.

  • Test your applications for User Account Control (UAC)-related issues by using the Standard User Analyzer (SUA) tool.

  • Test your Web applications and Web sites for compatibility with new releases and security updates to Windows Internet Explorer®, by using the Internet Explorer Compatibility Test Tool.

Common Compatibility Issues

Innovation related to the Windows operating system might occasionally cause compatibility issues. These compatibility issues tend to occur with the following technologies:

  • User Account Control (UAC): Adds security to Windows by limiting administrator-level access to the computer, restricting most users to run as Standard Users. UAC also limits the context in which a process executes, to minimize the ability of users to inadvertently expose their computer to viruses or other malware. This change affects any application installer or update that requires Administrator permissions to run, performs unnecessary Administrator checks or actions, or attempts to write to a non-virtualized registry location.

  • Windows Resource Protection (WRP): Enables applications to function properly even if they attempt to write to protected system files or registry locations. WRP creates a temporary work area and redirects write actions for the application session. This change affects any application installation that attempts to replace, modify, or delete protected operating system files or registry keys. These attempts will typically fail with an Access Denied error.

  • Internet Explorer Protected Mode: Helps to defend against elevation-of-privilege attacks by restricting the ability to write to any local computer zone resources other than temporary Internet files. This change affects any Web site or Web application that attempts to modify user files or registry keys, or that attempts to open a new window in another domain.

  • Deprecations, GINA, and Session 0: The newest release of the Windows operating system has also introduced issues with deprecated APIs or DLLs from Windows XP and from Windows Vista®, the new credential provider framework, and service isolation.

    • Deprecations: The Windows operating system has deprecated many objects from previous versions of the operating system. The deprecation has occurred for .dll files, executable (.exe) files, COM objects, registry keys, application-programming interfaces (APIs), and various other files. This change affects any application that used the deprecated APIs or DLLs, causing the applications to lose functionality or to fail to start.

    • Graphical Identification and Authentication (GINA) DLL: Prior to the release of the Windows Vista operating system, independent software vendors (ISVs) were able to modify authentication, by installing a GINA DLL. The GINA DLL then performed all the identification and authentication of user interactions. Windows Vista offers a new authentication model that no longer requires this DLL and ignores all previous GINA DLLs. This change affects any application or hardware component that attempts to log on by using customized logon applications, including biometric devices (fingerprint readers), customized user interfaces, and virtual private network (VPN) solutions for remote users with customized logon user interfaces.

    • Session 0: Prior to the release of the Windows Vista operating system, the first user who logged on to a computer ran in Session 0, which is the same session that is used for all system services. Windows Vista requires all users to run in Session 1 or later so that no user runs in the same session as the system services. Because of this change, applications will fail to start if they depend on interactive services. Interactive services include any service that attempts to send a window message, any service that attempts to locate a window or additional service, and any service that attempts to run any user processes that open the same named object (unless it is a globally named object).

  • Windows Filtering Platform (WFP): WFP is an application program interface (API) that enables developers to create code that interacts with the filtering that occurs at several layers in the networking stack and throughout the operating system. If you are using a previous version of this API in your environment, you might experience failures when running network-scanning, antivirus programs or firewall applications.

  • Operating System Version Changes: The operating system version number changes with each operating system release. For Windows Vista, the version number is 6, while for Windows 7, the version number is 6.1. The GetVersion function returns this value when queried by an application. This change affects any application or application installer that specifically checks for the operating system version and might prevent the installation from occurring or the application from running.

  • Windows Vista 64-bit: The 64-bit version of Windows Vista uses the Windows on Windows 64 (WOW64) emulator. This emulator enables Windows Vista to run 32-bit applications. The use of this emulator might cause an application or a component that uses 16-bit executables or installers, or 32-bit kernel drivers, to fail to start or to function incorrectly.

In response to several of these known issues, you can use ACT to locate your affected applications, to determine the actual impact on your organization, and finally, to create a solution to minimize or to fix the issue.

In This Section

Topic Name

Description

Configuring the Application Compatibility Toolkit

Includes information and procedures about how to configure the Application Compatibility Toolkit (ACT), including the recommended database configuration and modifications, and the supported topologies.

Phase 1: Collecting Your Compatibility Data

Includes information and procedures about how to create and configure your data-collection packages (DCPs). This section also includes guidance about how and when to deploy your DCPs, and how to perform common collection tasks, such as importing or exporting DCP settings.

Phase 2: Analyzing Your Compatibility Data

Includes information and procedures about how to filter and organize your data, which can include categorizing and prioritizing your data and selecting your assessment rating. In addition, this section provides information about viewing your application compatibility reports, adding issues and solutions, saving, opening, and exporting your reports and report data, and sending and receiving data through the Microsoft Compatibility Exchange.

Phase 3: Testing and Mitigating Your Compatibility Issues

Includes testing guidance and procedures for using the development tools, including the Standard User Analyzer (SUA), the Internet Explorer Compatibility Test Tool (IECTT), and the Compatibility Administrator, to help to fix your compatibility issues. This section also includes detailed information about the application fix (previously known as "shims") library, and the known Internet Explorer security feature issues.

ACT Walkthrough Exercises

Includes information and procedures that walk you through each of the major ACT scenarios, which include deploying a new operating system or a service pack into your environment, applying a Windows security update, and testing and fixing your issues by using the Standard User Analyzer and the Compatibility Administrator.

See Also

Concepts

Introduction to the Application Compatibility Toolkit (ACT) Version 5.6
Understanding the Application Compatibility Manager
Application Compatibility Toolkit Technical Reference
Troubleshooting ACT