LockClrVersion (Función)

Esta función puede usarse para permitir que el host determine qué versión del motor Common Language Runtime (CLR) va a usarse en el proceso antes de inicializarlo explícitamente.

Esta función está en desuso desde la versión 4 de .NET Framework.

Sintaxis

HRESULT LockClrVersion (  
    [in] FLockClrVersionCallback   hostCallback,  
    [in] FLockClrVersionCallback  *pBeginHostSetup,  
    [in] FLockClrVersionCallback  *pEndHostSetup  
);  

Parámetros

hostCallback
[in] El valor de este parámetro se corresponde con la función a la que se llamará desde el motor CLR tras el proceso e inicialización.

pBeginHostSetup
[in] El valor de este parámetro se corresponde con la función a la que se llamará desde el host para informar al motor CLR de que va a iniciarse el proceso de inicialización.

pEndHostSetup
[in] El valor de este parámetro se corresponde con la función a la que se llamará desde el host para informar al motor CLR de que se ha completado el proceso de inicialización.

Valor devuelto

Al usar este método, se devuelven los códigos de error COM estándar que se definen en WinError.h además de los valores que se muestran a continuación.

Código devuelto Descripción
S_OK El método se completó correctamente.
E_INVALIDARG Si se devuelve este valor, significa que uno o varios de los argumentos tienen un valor null.

Comentarios

Antes de que se inicialice el motor CLR, el host llama a la función LockClrVersion. La función LockClrVersion toma tres parámetros; todos ellos son devoluciones de llamada de tipo FLockClrVersionCallback. Este tipo se define de la manera que se indica a continuación.

typedef HRESULT ( __stdcall *FLockClrVersionCallback ) ();  

Los siguientes pasos suceden durante el proceso de inicialización del runtime:

  1. Desde el host, se llama a la función CorBindToRuntimeEx o a una de las otras funciones de inicialización del tiempo de ejecución. Como alternativa, el runtime se podría inicializar desde el host mediante la activación de objetos COM.

  2. Desde el runtime, se llama a la función que se especifica en el parámetro hostCallback.

  3. A continuación, se realiza la siguiente secuencia de llamadas desde la función que se especifica en el parámetro hostCallback:

    • La función que se especifica en el parámetro pBeginHostSetup.

    • La función CorBindToRuntimeEx (u otra función de inicialización de tiempo de ejecución).

    • El método ICLRRuntimeHost::SetHostControl.

    • El método ICLRRuntimeHost::Start.

    • La función que se especifica en el parámetro pEndHostSetup.

Todas las llamadas desde pBeginHostSetup hasta pEndHostSetup deberán producirse en un único subproceso o fibra y con la misma pila lógica. Este subproceso puede ser diferente del subproceso en el que se llama al parámetro hostCallback.

Requisitos

Plataformas: Vea Requisitos de sistema.

Encabezado: MSCorEE.h

Biblioteca: MSCorEE.dll

Versiones de .NET Framework: disponible a partir de la versión 2.0

Consulte también