Configuración por aplicación
La configuración por aplicación redirige la dependencia de una aplicación determinada de una versión de un ensamblado en paralelo a otra versión del ensamblado. Una configuración por aplicación puede ser necesaria si el funcionamiento correcto de una aplicación determinada requiere una versión de ensamblado diferente a la especificada normalmente como configuración predeterminada o configuración del publicador. Por ejemplo, una actualización global de la versión del ensamblado por el publicador podría corregir el ensamblado pero interrumpir esta aplicación en particular. En este caso, se puede usar la configuración por aplicación para permitir que la aplicación continúe ejecutándose con la versión anterior del ensamblado.
A partir de Windows Server 2003, la configuración por aplicación siempre invalida la configuración predeterminada por aplicación. La configuración por aplicación invalida la configuración del publicador por aplicación solo si el archivo de configuración de la aplicación especifica apply="no" en publisherPolicy y hay una entrada correspondiente presente en la base de datos compatibilidad de aplicaciones.
Nota
En Windows XP, la configuración por aplicación invalida la configuración predeterminada y la configuración del publicador por aplicación. Para obtener información, vea Configuración por aplicación en Windows XP.
A partir de Windows Server 2003, una configuración por aplicación invalidará una configuración de publicador si el archivo de configuración de la aplicación especifica apply="sí" en publisherPolicy y la marca EnableAppConfig se establece para la aplicación en la base de datos compatibilidad de aplicaciones. Esta funcionalidad para invalidar una configuración de publicador mediante una configuración por aplicación permite que la aplicación se ejecute en Safemode. Para obtener más información sobre la base de datos de compatibilidad de aplicaciones y Safemode, consulte El kit de herramientas de compatibilidad de aplicaciones de Windows. Puede obtener el Kit de herramientas de compatibilidad de aplicaciones de Windows de https://www.microsoft.com/downloads.
Nota
Si envía componentes con un archivo de configuración de aplicación (.config archivo) que especifica apply="no" en publisherPolicy, esto hará que se produzca un error en la generación del contexto de activación. La configuración por aplicación se omitirá si envía componentes con un archivo .config que especifica apply="sí" en publisherPolicy.
Los administradores de aplicaciones pueden implementar una configuración por aplicación mediante la creación e instalación de archivos de configuración de aplicaciones y la actualización de la base de datos de compatibilidad de aplicaciones. El archivo de configuración de la aplicación debe implementarse e instalarse en la misma carpeta que el archivo ejecutable de la aplicación. Para obtener una lista del esquema de archivo, consulte Esquema de archivo de configuración de la aplicación. La base de datos de compatibilidad de aplicaciones debe distribuirse como se describe en Application Compatibility Toolkit.
Nota
Si la aplicación se ejecuta en Safemode, no recibirá correcciones de seguridad importantes o correcciones de errores que el publicador del ensamblado podría emitir como archivos de configuración del publicador. Por lo tanto, una aplicación que usa la configuración por aplicación puede permanecer no segura o seguir funcionando incorrectamente incluso después de aplicar un nuevo ensamblado con estas correcciones al sistema. Por este motivo, los desarrolladores de aplicaciones nunca deben enviar una aplicación con una configuración por aplicación. Los administradores corporativos solo deben usar la configuración por aplicación como una corrección temporal cuando una configuración del publicador interrumpe la aplicación. En este caso, la solución permanente es que los desarrolladores del ensamblado y los desarrolladores de la aplicación deberán trabajar juntos para asegurarse de que los ensamblados con la configuración del publicador sean totalmente compatibles con versiones anteriores.
A continuación se muestra un ejemplo de un archivo de configuración de aplicación. Para obtener más información, vea Archivos de configuración de aplicaciones.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<configuration>
<windows>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity processorArchitecture="X86" name="Microsoft.Windows.mysampleApp" type="win32" version="1.0.0.0"/>
<publisherPolicy apply="no"/>
<dependentAssembly>
<assemblyIdentity type="win32" processorArchitecture="x86" name="Microsoft.Windows.SampleAssembly" publicKeyToken="0000000000000000"/>
<bindingRedirect oldVersion="2.0.0.0" newVersion="2.0.1.0"/>
</dependentAssembly>
</assemblyBinding>
</windows>
</configuration>
El administrador de aplicaciones debe agregar las entradas necesarias a la base de datos compatibilidad de aplicaciones. Descargue e instale windows Application Compatibility Toolkit 2.6 desde https://www.microsoft.com/downloads. Cree una nueva base de datos personalizada o actualice la base de datos existente con el administrador de compatibilidad como se describe en el kit de herramientas. La corrección de compatibilidad que desea elegir para la capa de compatibilidad de la aplicación es EnableAppConfig. Siempre debe probar las aplicaciones antes de instalar una nueva base de datos de compatibilidad.