Creating a Custom Compatibility Fix

Applies To: Windows 7, Windows Vista

The Compatibility Administrator tool uses the term fix to describe the combination of compatibility information added to a customized database for a specific application. This combination can include single application fixes, groups of fixes that work together as a compatibility mode, and blocking and non-blocking AppHelp messages.

Important

Fixes apply to a single application only; therefore, you must create multiple fixes if you need to fix the same issue in multiple applications.

What is a Compatibility Fix?

A compatibility fix, previously known as a shim, is a small piece of code that intercepts API calls from applications, transforming them so Windows® 7 will provide the same product support for the application as previous versions of the operating system. This can mean anything from disabling a new feature in Windows 7 to emulating a particular behavior of an older version of the Win32® API set.

Searching for Existing Compatibility Fixes

The Compatibility Administrator has preloaded many common applications, including any known compatibility fixes, compatibility modes, or AppHelp messages. Before you create a new compatibility fix, you can search for an existing application and then copy and paste the known fixes into your customized database.

Important

The Application Compatibility Toolkit (ACT) installs a 32-bit and a 64-bit version of the Compatibility Administrator. You must use the 32-bit version to create custom databases for 32-bit applications and the 64-bit version to create custom databases for 64-bit applications. If you create a custom database by using the wrong version of the Compatibility Administrator, the database will not open.

To search for an existing application

  1. In the left pane of the Compatibility Administrator, expand the Applications folder and search for your application name.

  2. Click the application name to view the preloaded compatibility fixes, compatibility modes, or AppHelp messages.

Creating a New Compatibility Fix

If you are unable to find a preloaded compatibility fix for your application, you can create a new one for use by your customized database.

To create a new compatibility fix

  1. In the left pane of the Compatibility Administrator, underneath the Custom Databases heading, right-click the name of the database to which you will apply the compatibility fix, click Create New, and then click Application Fix.

    The Create new Application Fix Wizard appears.

  2. Type the name of the application to which this compatibility fix applies, type the name of the application vendor, browse to the location of the application file (.exe) on your computer, and then click Next.

    The wizard shows the available Compatibility Modes.

  3. Select the operating system for which your compatibility fix applies, click any applicable compatibility modes to apply to your compatibility fix, and then click Next.

    The wizard alters to show the available Compatibility Fixes.

  4. Select any additional compatibility fixes to apply to your compatibility fix, and then click Next.

    The wizard alters to show the known Matching Information, used for program identification.

  5. Select any additional criteria to use to match your applications to the AppHelp message, and then click Finish.

Note

By default, the Compatibility Administrator automatically selects the basic matching criteria for your application. As a best practice, you should use a limited set of matching information to represent your application, as it reduces the size of the database. However, you must also make sure you have enough information to correctly identify your application.

See Also

Concepts

Compatibility Administrator Tool
Known Compatibility Fixes, Compatibility Modes, and AppHelp Messages

Other Resources

Testing and Mitigating Issues by Using the Development Tools