Share via


Archivos de configuración de activación

Una aplicación que proporcione un modelo de extensibilidad administrado puede necesitar extensiones que se ejecuten con una determinada versión del runtime de .NET Framework, donde esa versión se especifique en un archivo de configuración de la aplicación o un archivo de configuración de host. Antes de .NET Framework 4, el único modo de escribir extensiones con una versión posterior del runtime consistía en proporcionar un archivo de configuración diferente para la aplicación. Desgraciadamente, esto tenía una consecuencia no deseada, pues obligaba a todas las extensiones a usar el runtime más reciente.

Los archivos de configuración de activación constituyen una solución alternativa en el caso concreto en el que el autor de una extensión usa un modelo de extensibilidad de la aplicación como plataforma y controla completamente todas las extensiones que se cargan. En este caso, es razonable permitir que el autor de la extensión decida qué versión del runtime se va a cargar y activar.

Por ejemplo, es posible que desee usar .NET Framework 4 para crear un conjunto de complementos de Microsoft Management Console (MMC) para personalizar la interfaz de usuario de una consola de administración en equipos donde MMC especifica la activación del runtime de .NET Framework 2,0. No puede reemplazar directamente la información de activación de MMC, pero puede usar una variable de entorno para especificar la ubicación de un archivo de configuración de activación que lo sustituya en una consola determinada, de modo que el runtime de .NET Framework 4 se active cuando se inicie la consola.

Proporcionar un archivo configuración de activación

Los nombres de archivo de configuración de activación siguen el mismo modelo que los nombres de archivo de configuración de la aplicación, pero usan la extensión .activation_config. Por ejemplo, una aplicación denominada MyApp.exe tiene un archivo de configuración de la aplicación denominado MyApp.exe.config y un archivo de configuración de activación denominado MyApp.exe.activation_config.

Los archivos de configuración de activación pueden contener elementos del archivo de configuración, pero los únicos elementos que se analizan son aquellos que se usan normalmente para la activación:

  • Elementos de la sección <startup>.

  • Elementos <gcServer>, <appdomainResourceMonitoring> y <etwEnable> de la sección <runtime>.

    Importante

    Asegúrese de que estos tres valores de la sección <runtime> del archivo de configuración de activación son iguales que los valores correspondientes del archivo de configuración de la aplicación o host.

El archivo de configuración de activación solamente lo usa el código de correcciones de compatibilidad (shim) que inicia el runtime. El runtime no tiene ninguna interacción con el archivo.

Una vez creado el archivo de configuración de la aplicación, establezca la variable de entorno COMPLUS_ApplicationMigrationRuntimeActivationConfigPath en la ruta de acceso en la que se encuentra el archivo. Durante el proceso de selección del runtime que se va a activar, se busca en esta ruta de acceso un archivo de configuración de la aplicación cuyo nombre coincida con el modelo.

Si la variable de entorno se establece pero la ruta de acceso especificada no contiene ningún archivo de configuración de activación que coincida con el modelo, es como de costumbre el archivo de configuración de la aplicación o host el que controla la activación del runtime.

La variable de entorno se puede establecer globalmente o mediante un proceso de inicio que configure el entorno. El establecimiento de variables de entorno globales depende de las condiciones de carrera con otras aplicaciones.

Por ejemplo, en la sesión de línea de comandos siguiente se copia un archivo de configuración de activación en una carpeta, se establece la variable de entorno en esa ruta de acceso y se ejecuta la aplicación:

copy c:\MyConfigs\MyApp.exe.activation_config c:\CustomConfigs
set COMPLUS_ApplicationMigrationRuntimeActivationConfigPath =
   c:\CustomConfigs
c:\Program Files\MyApp\MyApp.exe

En el archivo de configuración de activación siguiente se especifica la activación del runtime .NET Framework 4 y se duplica un valor <appDomainResourceMonitoring> hipotético del archivo de configuración de una aplicación hipotética:

<configuration>
   <startup>
      <supportedRuntime version="v4.0.30319"/>
   </startup>
   <runtime>
      <appDomainResourceMonitoring enabled="true"/>
   </runtime>
</configuration>

Métodos de activación compatibles

Los archivos de configuración de activación afectan a los siguientes métodos de activación. El término "heredado/a" hace referencia a las versiones de .NET Framework anteriores a .NET Framework 4.

Vea también

Otros recursos

Implementar .NET Framework y aplicaciones

Hospedaje (Referencia de la API no administrada)

Compatibilidad de MMC 3,0 y CLR 4,0