Program Compatibility Features and Resulting Internet Communication in Windows Server 2008

Applies To: Windows Server 2008

In This Section

Benefits and Purposes of Program Compatibility Features

Overview: Using Program Compatibility Features in a Managed Environment

How Program Compatibility Features Communicate with Sites on the Internet

Controlling the Flow of Information to the Internet Related to Program Compatibility Features

Procedure for Controlling Internet Communication Related to Program Compatibility Features

Note that there are three program compatibility features described in this section:

  • Program Compatibility Wizard

  • Compatibility tab in the property sheet

  • Program Compatibility Assistant

In addition, at the end of the section, there is a brief description of the Application Compatibility Toolkit, which you can use to locate and address compatibility problems.

The program compatibility features work in an integrated way with Windows Error Reporting (WER) and the Problem Reports and Solutions feature in Windows Server 2008. This makes it easier for you or a user to obtain updated, Web-based information about how to overcome compatibility problems with a program you want to run. For more information, see Windows Error Reporting and the Problem Reports and Solutions Feature in Windows Server 2008 in this white paper.

Benefits and Purposes of Program Compatibility Features

There are some programs that work on earlier versions of Microsoft Windows that might fail to function properly on Windows Server 2008. This can happen for several reasons—a program may expect older formats of Windows data, may expect user information to be in specific locations or formats, or may not be designed for the tighter security implemented in Windows Server 2008. In addition, programs written exclusively for Microsoft Windows 95, Windows 98, or Windows Millennium Edition may use direct hardware access, which can greatly reduce operating system stability. Windows Server 2008 requires that hardware access be handled through the correct channels.

To enable a better user experience, Windows Server 2008 includes several program compatibility features:

  • The Program Compatibility Wizard. A user can run this wizard to choose compatibility settings that can help an otherwise incompatible program run successfully. After the user tries the settings, the wizard asks whether to send Microsoft a report about the incompatible program and the compatibility settings that were selected. The user can view the information before choosing whether to send the report. For a description of the information in the report, see "Aspects of Internet Communication that are Similar for All Program Compatibility Features," later in this section.

    One way to start the Program Compatibility Wizard is to open Control Panel, click Programs (visible through Control Panel Home), and under Programs and Features, click Use an older program with this version of Windows. Another way to start the wizard is by opening Help and Support, searching Help for a topic about compatibility, and finding one of several Help topics that contains a shortcut to start the wizard.

  • The Compatibility tab in the property sheet for a program. A user can right-click a program icon or program file (for example, on the desktop or in Windows Explorer), click Properties, click the Compatibility tab, and then change the compatibility settings for the program. A report that lists the program, the compatibility settings, and other information will be generated and then handled by Windows Error Reporting (if it is enabled). For a description of the information in the report, see "Aspects of Internet Communication that are Similar for All Program Compatibility Features," later in this section.

  • The Program Compatibility Assistant. If the program is on a list of known incompatible programs included in Windows Server 2008, the Program Compatibility Assistant appears. If the program is known to cause a serious problem, it will be blocked. Otherwise, Program Compatibility Assistant warns the user but offers the option of running the program. In either case, the Program Compatibility Assistant also offers the option of checking online for information or solutions.

    For known incompatible drivers, the response is slightly different. They are always blocked, and a balloon notification appears. If the user clicks the notification, the Program Compatibility Assistant appears and offers the option of checking online for information or solutions.

Overview: Using Program Compatibility Features in a Managed Environment

In a managed environment, the program compatibility features can be of significant value. The Program Compatibility Wizard and Compatibility tab offer ways for a user to try compatibility settings with a program. The Program Compatibility Assistant can prevent a user from running a program that is known to cause serious problems.

However, you might decide to use Group Policy to control compatibility features. With Group Policy, you can:

  • Turn off one or more of the program compatibility features.

  • Turn off Windows Error Reporting, so that reports generated by the program compatibility features are not sent and solution information is not sent back.

  • Configure Windows Error Reporting so that all reports (including reports from program compatibility features) are sent to a server in your organization instead of being sent directly to Microsoft.

For more information about Group Policy settings for program compatibility features, see Controlling the Flow of Information to the Internet Related to Program Compatibility Features, later in this section. For more information about Group Policy settings for Windows Error Reporting, see Windows Error Reporting and the Problem Reports and Solutions Feature in Windows Server 2008 in this white paper.

How Program Compatibility Features Communicate with Sites on the Internet

The program compatibility features work in an integrated way with Windows Error Reporting and the Problem Reports and Solutions Feature in Windows Server 2008. This makes it easier for you or a user to obtain updated, Web-based information about how to overcome compatibility problems with a program you want to run. For more information, see Windows Error Reporting and the Problem Reports and Solutions Feature in Windows Server 2008 in this white paper.

Aspects of Internet Communication that are Similar for All Program Compatibility Features

Some aspects of Internet communication are similar for all program compatibility features, as described in the following list:

  • Specific information sent: All program compatibility features create a similar type of report for handling through Windows Error Reporting. The reports contain the following information.

    • File name: This is the file name of the program executable.

    • Program information: This information is stored in the program, and it can include the product name, version, company name, and a description of the program. (Some programs do not store all these types of information.)

    • Feature and (in some cases) context from which the report was generated: This information is coded as a number, and it tells whether the report came from the Program Compatibility Wizard or the Compatibility tab.

  • Default settings: By default, all program compatibility features are available for use in Windows Server 2008.

  • Logging: When the Program Compatibility Assistant is triggered, it logs en event that includes the incompatible program's path, filename, version, and product name, along with information about what triggered the Program Compatibility Assistant and what compatibility settings were applied.

    You can also use tools in the Application Compatibility Toolkit to help you monitor application compatibilty. The Application Compatibility Toolkit is described in "Additional References," later in this section.

    Also, when program compatibility features obtain solution information through Windows Error Reporting, that information can be viewed through the Problem Reports and Solutions feature (like other solution information obtained through Windows Error Reporting).

  • Encryption: The program compatibility features use the same approach to encryption that Windows Error Reports uses. Most of the information sent by program compatibility features (for example, program name and version) falls into the Windows Error Reporting category of "parameters," and therefore, it is not encrypted. If any information beyond "parameters" information is sent, it is encrypted.

  • Access: The Microsoft product group has access to the program compatibility data, and uses the data to understand program compatibility problems that customers are experiencing and to provide better information about how to solve those problems.

  • Privacy: The privacy statement for Windows Error Reporting (which handles the reports generated by program compatibility features) is available at:

    https://go.microsoft.com/fwlink/?LinkId=70677

  • Transmission protocol and port: For unencrypted information, HTTP is used with port 80. For encrypted information, HTTPS is used with port 443.

  • Ability to disable: You can use Group Policy to disable program compatibility features, as described in "Controlling the Flow of Information to the Internet Related to Program Compatibility Features," later in this section.

Triggers and User Notifications for Program Compatibility Features

For each of the program compatibility features, a different trigger causes a report to be generated and passed to Windows Error Reporting. The user notifications are also different for each program compatibility feature. The following list provides details.

  • Trigger and user notification for the Program Compatibility Wizard: When the user completes the wizard, the wizard asks whether to send Microsoft a report about the program and the compatibility settings that were selected. The user is offered the opportunity to view the information in the report and must provide confirmation before the report is sent. Information is not sent automatically, and the report might not be sent immediately; Windows Error Reporting might save it in a queue and send it later.

  • Trigger and user notification for the Compatibility tab in the property sheet for a program: When the user changes settings on the Compatibility tab and then clicks OK, a report is generated and passed to Windows Error Reporting. The report might not be sent immediately; Windows Error Reporting might save it in a queue and sent it later.

  • Trigger and user notification for the Program Compatibility Assistant: The user runs a program that is on a list of known incompatible programs included in Windows Server 2008. After the Program Compatibility Assistant blocks the program or displays a warning, it offers a button that the user can click to find online information about the program. If the user clicks the button, the Program Compatibility Assistant generates a report and sends it through the Windows Error Reporting feature. The resulting Web page has a URL that begins with https://oca.microsoft.com/en/response.aspx?sid= and ends with a number assigned to the page for that incompatible program. The Web page displays information or links that might help solve the compatibility problem.

How Information is Stored Locally for the Program Compatibility Assistant

As described in the previous list, the Program Compatibility Assistant uses lists of known incompatible programs that are included in Windows Server 2008. The lists are in the following set of database files:

File Name Type of File Information Stored

Sysmain.sdb

Information about known incompatible programs (.exe files)

Msimain.sdb

Information about known incompatible Windows installer packages (.msi files)

Drvmain.sdb

Information about known incompatible drivers

To control the way program compatibility features communicate across the Internet, you can use Group Policy to accomplish one or more of the following:

  • Turn off the Program Compatibility Wizard and Compatibility tab: You can turn off the Program Compatibility Wizard, the Compatibility tab, or both.

    For more information, see Procedure for Controlling Internet Communication Related to Program Compatibility Features, later in this section.

  • Turn off Windows Error Reporting: If you turn off Windows Error Reporting, reports generated by the program compatibility features are not sent. With this option, users will not be able to view updated Web-based information about solutions to compatibility problems.

    For more information, see Windows Error Reporting and the Problem Reports and Solutions Feature in Windows Server 2008 in this white paper.

  • Send Windows Error Reporting reports to a server in your organization: If you use this approach, error reports like those generated by the Program Compatibility Wizard are sent to a server in your organization instead of being sent directly to Microsoft. With this option, users will not be able to view updated Web-based information about solutions to compatibility problems.

    For more information, see Windows Error Reporting and the Problem Reports and Solutions Feature in Windows Server 2008 in this white paper.

Note that there is a Group Policy setting for turning off the underlying functionality called the Application Compatibility Engine, but in most situations we do not recommend turning off this engine.

The following procedure tells how to use Group Policy to turn off the Program Compatibility Wizard, the Compatibility tab, or both.

To Turn Off the Program Compatibility Wizard and Compatibility tab by Using Group Policy

  1. As needed, see Appendix B: Resources for Learning About Group Policy for Windows Server 2008, and then edit an appropriate GPO.

  2. Expand Computer Configuration, expand Policies (if present), expand Administrative Templates, expand Windows Components, and then click Application Compatibility.

  3. In the details pane, double-click and then enable the settings for the features you want to turn off:

    • Remove Program Compatibility Property Page. The Compatibility Property Page is also known as the Compatibility tab in the property sheet for a program.

    • Turn Off Program Compatibility Wizard. When this setting is enabled, the wizard will start, but the first page of the wizard will inform the user that the wizard has been turned off.

Important

Do not configure Turn Off Application Compatibility Engine unless you have reviewed the Explain text for the setting. In most situations we do not recommend turning off this engine.

Additional References

  • By using the Application Compatibility Toolkit, you can customize the way Windows Server 2008 responds to programs that are known to compromise system integrity. For example, you can use the Compatibility Administrator tool to create custom messages that notify users about problems with an incompatible application and redirect users to your intranet site. For more information about the Application Compatibility Toolkit, see the TechNet Web site at:

    https://go.microsoft.com/fwlink/?LinkId=106403

  • For information about application compatibility for developers writing programs for Windows Server 2008, see the MSDN Web site at:

    https://go.microsoft.com/fwlink/?LinkId=73079

  • For more information about application compatibility for Windows Server 2008, see the TechNet Web site at:

    https://go.microsoft.com/fwlink/?LinkId=106404