Microsoft Application Compatibility Toolkit (ACT) and Shims Besides Windows 7 being a new version of Windows, there are several new

Microsoft Application Compatibility Toolkit (ACT) and Shims Besides Windows 7 being a new version of Windows, there are several new

technologies that might cause applications to fail. Some of these include the following:

. User Account Control (UAC): Technology that limits administrator level access to a computer running Windows 7.

. Windows Resource Protection (WRP): A mechanism that prevents writing to protected system files or registry locations.

. Internet Explorer Protected Mode: A mechanism used in Internet Explorer that prevents a web page from accessing local computer resources other than the temporary Internet files.

CHAPTER 12: Working with Applications

To assist in dealing with compatibility issues, Microsoft created the Application Compatibility Toolkit (ACT), which is a collection of programs that enables administrators to gather information about incompatibilities between specific applications and Windows 7 and deploy fixes to overcome these incompatibilities. Included in ACT, you find the following:

. Compatibility Administrator . Application Compatibility Manager . Internet Explorer Compatibility Test Tool . Setup Analysis Tool . Standard User Analyzer

You can download ACT 5.6 from http://www.microsoft.com/downloads/en/ details.aspx?FamilyId=24DA89E9-B581-47B0-B45E-492DD6DA2971& displaylang=en. However, to use ACT, you need a SQL server to store the data gathered by ACT. For the SQL server, you can use the full version of SQL or you can use the free versions, SQL Server Express.

Compatibility Administrator is a central database of known compatibility problems for hundreds of Windows 7 applications. In new versions of Windows, Microsoft includes numerous “shims” or minor fixes that are used to improve compatibility with existing non-Microsoft software. Microsoft analyzed the application and provided an application compatibility shim. These shims are applied on a per-application basis. Shims can be used to fool Windows when a specific application is running. For example, if an applica- tion checks to see what version of Windows is running, a shim can tell Windows to report an different version of Windows instead of Windows 7. Another example would that if the application is looking for a file or registry setting that is different between Windows 7 and older versions of Windows, the shim will tell Widnows to redirect the application to the correct location

Of course, although shims are useful tools, they are only temporary bandages for the application until the application can be properly updated to work with the newer version of Windows. In addition, because of revised Windows architecture, shims don’t work for all applications and shims must be created for the application you are trying to get working under Windows 7.

To help ensure application compatibility, the Application Compatibility Manager (ACM) is a tool provided by Microsoft that enables you to analyze and collect information on running applications before you upgrade to or

Application Compatibility

deploy Windows 7. You can collect information, analyze the data, and test and mitigate your applications.

For more information about ACM, visit the following website: http://technet.microsoft.com/en-us/library/cc766464(WS.10).aspx

The Internet Explorer Compatibility Test Tool collects compatibility informa- tion for web pages and web-based applications in real-time. When completed, it can identify compatibility problems with web applications and pages for Internet Explorer 8.

The Setup Analysis Tool is designed to analyze application setup programs for potential issues, including the installation of kernel mode drivers, installation of 16-bit components, installation of graphical identification, and authentica- tion (GINA) DLLs and changes to system files and registry keys that are pro- tected with the Windows Resource Protection (WRP).

UAC limits what an application can do, even if logged in as administrator. As

a result, the Standard User Analyzer analyzes an application while it’s running to determine if an application is compatible with UAC and give you a set of recommended compatibility fixes. After you review the fixes, you can click Apply to test the fixes to see if they worked.