Windows 7 Backward Compatibility Feature Update

Windows 7 Backward Compatibility Feature Update

Microsoft has released an update to the backward compatibility feature in Windows 7 and in Windows Server 2008 R2 that increases the compatibility of programs in specific scenarios.

We all know that the backward compatibility feature can set the dynamic context of a dll to either Windows 7 or Windows Vista which makes it possible to enable a Windows Vista context for software programs that have not been designed specifically for Windows 7.

It is under circumstances possible that Windows 7 or Windows Server 2008 R2 will set the dynamic context to Windows 7 / Windows Server 2008 R2 even if the program has been designed for an earlier version of Windows.

This is the case if one of the two following conditions are true:

-> The DLL does not specify an RT_MANIFEST resource.
-> The DLL calls an API that uses the dynamic compatibility context. For example, the DLL calls the GetOverlappedResults API.

Microsoft explains the issue in detail at the Help and Support Knowledgebase article.

However, if a DLL is not manifested correctly, the DLL may run in a Windows 7 context unexpectedly. This issue occurs because the Windows 7 compatibility mechanism incorrectly assumes that a DLL is compatible with Windows 7 if the DLL does not specify an RT_MANIFEST resource. This issue occurs especially if all the other DLLs in an application are not manifested or if the other DLLs are manifested with Windows 7 compatible GUIDs. This causes the “faulty” DLL to run in Windows 7 compatible mode. This behavior causes the application that loads the DLL to stop responding. Therefore, customers cannot run an application in Windows 7 context if the application loads at least one DLL in those two conditions
Windows 7 users who are experiencing compatibility issues, especially with old programs, might be able to resolve the issues by installing the Windows 7 patch.

The update requires a genuine validation before it becomes available. It is provided for both 32-bit and 64-bit editions of Windows 7 and Windows Server 2008 R2.

This website is not affiliated, owned, or endorsed by Microsoft Corporation. It is a member of the Microsoft Partner Program.