Common Compatibility Issues

New technologies and techniques in Windows 2000 can cause errors in applications developed for previous versions of Windows. The Windows 2000 Compatibility Guide, which you can find at the MSDN Web site, includes detailed descriptions of many changes that might cause application problems. The guide organizes compatibility issues into four areas:

  • Setup and installation

  • General Windows 2000 compatibility

  • Application stability

  • Windows platform

This section describes some of the changes in Windows 2000 that most commonly cause problems for applications. Applications developed for previous versions of Windows might not take full advantage of new features, such as Active Directory or IntelliMirror. This section does not address the issues that arise when applications do not make use of such new features.

You might encounter problems in the following areas:

System File Protection

Earlier versions of Windows allowed applications to replace shared system files during installation. When such changes occurred, users frequently encountered problems that ranged from program errors to an unstable operating system.

System File Protection (SFP) is a new feature in Windows 2000 that prevents applications from replacing system files. This feature verifies that protected system files are the correct Microsoft version. If a file is replaced with an incorrect version, Windows 2000 restores the correct version.

Robust Heap Checking

Windows 2000 includes several performance enhancements in the heap manager. Applications that did not use heap management correctly before might now have their memory management problems exposed. Common problems include using memory after it has been freed and assuming that a memory will not move when it is reallocated to a smaller size.

Enumeration of Hardware Devices

Changes in the list of supported hardware devices might cause problems for applications that use devices that are no longer supported.

Enumeration of Fonts

The list of fonts has changed. Because registry keys have been added to support internationalization, some applications might see multiple displays of fonts.

Changed Registry Keys

Some registry keys have been moved or deleted. Applications that use the Win32 application programming interface (API) to make registry changes should not experience problems, but they can have problems if they write directly to the registry.

Version Checking

Application installation programs that check versions incorrectly will have problems. You should check for the minimum operating system version your application requires and install on that or any later version, unless your application is dependent on a specific operating system or version.

Windows Messaging Service

Applications that expect Windows Messaging Service (WMS) to be provided by the operating system will not find it. You must obtain this service from the Windows Update Web site.

File Input/Output Security

Windows 2000 has tightened security for file input and output. Applications that use file filters, such as antivirus programs, might lose significant functionality with Windows 2000.