Compartir a través de


Cargar Common Language Runtime en un proceso

Antes de poder ejecutar código administrado, el host debe cargar e inicializar Common Language Runtime (CLR). Todos los hosts comienzan con un código auxiliar no administrado porque Common Language Runtime aún no se está ejecutando en el proceso. .NET Framework dispone de un conjunto de API no administradas denominadas API de hospedaje que el host puede utilizar para iniciar el motor en tiempo de ejecución. Para obtener más información, vea Interfaces de hospedaje.

Nota

Los métodos de hospedaje proporcionados por versiones de .NET Framework anteriores a .NET Framework 4 están desusados.Se recomienda emplear las interfaces presentadas por .NET Framework 4 y que se describen en este tema.

Un host puede cargar el CLR en un proceso mediante uno de los procedimientos siguientes:

El prototipo para todas estas interfaces está en el archivo Metahost.h, que se encuentra en el directorio Include del Kit de desarrollo de software (SDK) de Windows. Los hosts pueden usar las interfaces ICLRRuntimeInfo e ICLRRuntimeHost para controlar qué versión del runtime hay que cargar y controlar el comportamiento de las funciones básicas, como la recolección de elementos no utilizados y la carga de ensamblados.

Use la interfaz ICLRRuntimeHost para realizar las acciones siguientes:

  • Iniciar el runtime llamando al método ICLRRuntimeHost::Start.

  • Ejecutar código administrado.

  • Obtener un puntero a la interfaz ICLRControl (que brinda acceso a los administradores implementados por Common Language Runtime) y registrar un objeto de control de host que implementa la interfaz IHostControl. Common Language Runtime llama a la interfaz IHostControl para determinar qué administradores implementa el host.

Vea también

Referencia

AppDomainSetup

CorBindToRuntimeEx (Función)

ICLRRuntimeHost (Interfaz)

ICLRControl (Interfaz)

Conceptos

Transición al código administrado del host

Otros recursos

Información general de hospedaje

Hospedaje (Referencia de la API no administrada)