Compartir a través de


Configuración por aplicación en Windows XP

En Windows XP, la configuración por aplicación invalida la configuración predeterminada y la configuración del publicador por aplicación. Esto redirige la dependencia de una aplicación específica de una versión de un ensamblado en paralelo a otra versión especificada del ensamblado.

Nota

A partir de Windows Server 2003, 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 de compatibilidad de aplicaciones. La configuración por aplicación siempre invalida la configuración predeterminada. Para obtener información, consulte configuración por aplicación.

 

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 una configuración predeterminada o de 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. Otro ejemplo, una instalación de Service Pack que contiene una actualización de ensamblado podría usar la configuración del publicador para redirigir las dependencias de todas las aplicaciones y ensamblados del sistema de la versión 1.0.0.0 a 1.0.1.0. Si hay una aplicación que requiere que la versión 1.0.0.0 funcione correctamente, se puede redirigir a la versión 1.0.0.0 mediante la configuración por aplicación.

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. Estos redirigen una aplicación específica de la dependencia de una versión de un ensamblado en paralelo a la dependencia de otra versión. Los archivos de configuración de la aplicación pueden invalidar los archivos de configuración del publicador y la configuración predeterminada especificada por manifiestos de aplicación y manifiestos de ensamblado. El archivo de configuración de la aplicación incluye información utilizada por el cargador cuando se llama a CreateProcess .

Para configurar una aplicación para invalidar el manifiesto de aplicación y la configuración del publicador, un desarrollador debe crear un archivo de configuración de aplicación. A continuación, el archivo de configuración de la aplicación se implementa e instala 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.

Tenga en cuenta que si la aplicación usa la configuración por aplicación, no recibirá correcciones de seguridad importantes ni correcciones de errores que el publicador del ensamblado pueda 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 
          name="Microsoft.Windows.mysampleApp" 
          processorArchitecture="x86" 
          version="1.0.0.0" type="win32"/>
        <dependentAssembly>
          <assemblyIdentity type="win32" 
              name="Microsoft.Windows.SampleAssembly" 
              processorArchitecture="x86" 
              publicKeyToken="0000000000000000"/>
          <bindingRedirect 
              oldVersion="2.0.0.0" 
              newVersion="2.0.1.0"/>
        </dependentAssembly>
    </assemblyBinding>
   </windows>
</configuration>