Esta nota describe los requisitos para la instalación de cualquier componente que utiliza el DLL(s) de MFC, incluyendo CTL3D32.DLL. los componentes relacionados con DAO y ODBC requieren consideraciones especiales y no se describen aquí. Consulte la documentación de esos componentes para obtener más información.
DLL y marcas de versión
El DLL(s) de MFC son lo que se denomina una DLL compartida. Para la versión Win32 de MFC, existe potencialmente sola DLL de MFC que necesita para instalar con su aplicación: MFC4x.DLL o una versión posterior. Esta DLL sola contiene todo el código necesario para núcleo MFC, MFC/OLE, MFC/base de datos y las clases MFC/red (versiones anteriores tenían cada uno de estos componentes estallados en archivos DLL independientes).
Para la versión Macintosh de MFC, estos son archivos DLL aún independientes: MFC4x.DLL, MFCO4x.DLL y MFCD4x.DLL (o versiones posteriores). Incluso si su aplicación no utiliza todas las DLL de MFC (quizás no utilizar la funcionalidad de OLE o base de datos de MFC, por ejemplo), debe instalar todas las DLL de MFC como un conjunto. Cualquier otra cosa supondría componentes no coincidentes. Esto es importante porque no hay ninguna garantía de que una versión posterior de MFC4x.DLL trabajará con versión 4.x de MFCO4x.DLL.
Debido a que estos archivos DLL son componentes compartidos, residen en el directorio de "sistema" de Windows. Es decir, debe instalarse en el directorio indicado por el valor devuelto por GetSystemDirectory. Instalar en este directorio, como los otros componentes del sistema compartido, debe hacerse cuidadosamente para evitar sobrescribir las versiones más recientes de la DLL que otras aplicaciones previamente instaladas pueden confiar a. Para recuperar la información de versión de los archivos instalados, utilice el GetFileVersionInfo API proporcionadas por el versión API de Windows. Sólo se debe instalar una nueva DLL si su información de versión, dar por los campos dwFileVersionMS y dwFileVersionLS de la estructura VS_FIXEDFILEINFO es más grande que la misma información de versión de la DLL ya está instalada.
Por último, si la aplicación utiliza CTL3D32.DLL (si se llama CWinApp::Enable3dControls), tendrá que instalar la versión correcta del CTL3D32.DLL en el directorio del sistema, vuelva a ser cuidadoso comprobar que no existe ya una versión más reciente. Además, la versión de CTL3D32.DLL que se instala es diferente dependiendo de la plataforma que se está instalando en. Para Windows versión 4.0 y posteriores, CTL3D32.DLL no se utiliza en ninguna circunstancia, por lo que no debe ser instalado (Esto incluye Windows 95 y Windows NT 4.0). Para Win32s, \WIN32S\REDIST\CTL3D32.DLL debe estar instalado en el directorio del sistema. Para Windows NT 3.xx, \MSDEV\CTL3D32.DLL debe estar instalado en el directorio del sistema. Cada uno de estos archivos DLL es específica de la plataforma de destino, aunque tienen el mismo nombre. La versión de Win32s se negará a ejecutar en Windows NT; la versión de Windows NT se negará a ejecutar en Win32s.
Consideraciones de localización
Si su aplicación ha elegido para localizar su uso de los recursos MFC por instalar MFC4xLOC.DLL o una versión posterior, debe seguir las instrucciones de esta sección. Como otros archivos DLL compartida, MFC4xLOC.DLL sólo debe instalarse si su versión es más reciente que la versión que ya está instalada. Como resultado instalar este archivo DLL es muy similar al instalar los otros DLL(s) de MFC. Hay un par de excepciones.
En primer lugar, nunca debe instalar MFC4xLOC.DLL en un sistema en inglés. Recursos en inglés están integrados en MFC4x.DLL y es más rápido cargar primero desde MFC4xLOC.DLL DLL en lugar de buscar (y carga).
En segundo lugar, hay varias versiones de MFC4xLOC.DLL: uno para cada escenario. Sus nombres se basan en la configuración regional. Por ejemplo, MFC4xDEU.DLL es la versión alemana de MFC4xLOC.DLL, que contiene información de versión que identifica como escenario alemán; MFC4xESP.dll, del mismo modo, es la versión en español de la DLL. Si se instala, debe asegurar que 1) el escenario para el que se pretende coincide con la configuración regional del sistema de Windows que está instalado, y 2) que el escenario no es diferente de la configuración regional de la MFC4xLOC.DLL ya instalado (si está instalado). Si no se cumplen estas dos condiciones, entonces la DLL debe no sobrescribirse. Si la marca de versión de la MFC4xLOC.DLL existente es igual o mayor que la marca de versión en su distribución, entonces eres producto funcionará una vez instalado. Pueden haber mezclado recursos (algunas de una lengua, algunos de otro), pero que funciona. Si la marca de versión de la DLL existente es menor que su distribución y la configuración regional es no coinciden, puede que su producto no funcione una vez instalado. Debe advertir al usuario de este desfase y volver de su proceso de instalación. El usuario tendrá que resolver el conflicto entre esta DLL y su producto antes de continuar.
Importa&ntenbsp; Obviamente, esto puede agregar un montón de complejidad para su instalación, así como las complicaciones para el usuario final si utiliza e instala una mezcla de diferentes aplicaciones localizadas (algunas aplicaciones localizadas a una lengua y algunos a otro). Debido a esta dificultad, se recomienda encarecidamente que no enviar ninguna versión de MFC4xLOC.DLL. En su lugar, incluir los recursos adecuados de aplicación MFC en el propio módulo y evitar toda esta cuestión. Ver 57 de nota técnica para obtener más información sobre este tema.
&Notas técnicas por número |nbsp; Notas técnicas por categoría