Microsoft ha lanzado una actualización de la característica de compatibilidad hacia atrás en Windows 7 y Windows Server 2008 R2 que promete aumentar la compatibilidad hacia atrás de los sistemas operativos.
La actualización no está disponible a través de Windows Update, sólo directamente en el sitio web de soporte de Microsoft y probablemente también en el Centro de descarga de Microsoft.
La explicación del problema es bastante técnica. Básicamente resuelve un problema en el que las bibliotecas de enlaces dinámicos (dll) se ejecutan en un contexto de Windows 7 aunque no hayan sido diseñadas para ejecutarse en ese contexto.
Este suele ser el caso si el dll no especifica un RT_Manifest o si el dll llama a una API que utiliza el contexto de compatibilidad dinámica.
Hay disponible una actualización de la característica de compatibilidad con versiones anteriores en Windows 7 y en Windows Server 2008 R2. Esta actualización permite que una biblioteca de enlace dinámico (DLL) diseñada para versiones anteriores de Windows se ejecute en un contexto de Windows Vista si se cumplen las siguientes condiciones La DLL no especifica un recurso RT_MANIFEST.
La DLL llama a una API que utiliza el contexto de compatibilidad dinámica. Por ejemplo, la DLL llama a la API de resultados GetOverlappedResults.
La característica de compatibilidad hacia atrás en Windows 7 y en Windows Server 2008 R2 detecta el manifiesto en una DLL y establece el contexto dinámico de una DLL en Windows 7 o en Windows Vista. Esto permite que Windows 7 y Windows Server 2008 R2 proporcionen un contexto de Windows Vista para aplicaciones diseñadas para versiones anteriores de Windows.Sin embargo, si una DLL no se manifiesta correctamente, la DLL puede ejecutarse en un contexto de Windows 7 de forma inesperada. Este problema ocurre porque el mecanismo de compatibilidad de Windows 7 asume incorrectamente que una DLL es compatible con Windows 7 si la DLL no especifica un recurso RT_MANIFEST. Este problema ocurre especialmente si no se manifiestan todas las DLLs de una aplicación o si las otras DLLs se manifiestan con GUIDs compatibles con Windows 7. Esto hace que la DLL “defectuosa” funcione en modo compatible con Windows 7. Este comportamiento hace que la aplicación que carga la DLL deje de responder. Por lo tanto, los clientes no pueden ejecutar una aplicación en el contexto de Windows 7 si la aplicación carga al menos una DLL en esas dos condiciones.
Los usuarios de Windows 7 que han estado experimentando problemas de compatibilidad deben considerar instalar la actualización para ver si resuelve los problemas a los que se enfrentan.
Por otro lado, no es necesario instalar la actualización si los programas se ejecutan correctamente en el sistema operativo.
La actualización se puede descargar directamente del sitio web de Ayuda y soporte técnico de Microsoft. Se requiere validación antes de poder descargar la actualización.
Anuncio