Inizializzazione del runtime da un'applicazione COM

Affinché un'applicazione COM possa attivare un tipo gestito, è innanzitutto necessario caricare Common Language Runtime in memoria. Sebbene il caricamento del runtime non venga effettivamente eseguito tramite l'interoperabilità COM, bensì mediante il codice di avvio del runtime, un'applicazione COM può utilizzare una specifica versione del runtime.

La versione del runtime è determinata dai seguenti fattori:

  • Un'applicazione COM può specificare la versione del runtime in un file di configurazione dell'applicazione. Per ulteriori informazioni, vedere Configurazione di un'applicazione COM per l'esecuzione affiancata.

  • Il runtime può essere già stato caricato in memoria mediante un host estendibile, come Microsoft Internet Explorer o Microsoft Office. Il runtime caricato per l'host viene utilizzato dall'applicazione COM plug-in per l'esecuzione di componenti gestiti.

  • Se è necessario un controllo rigoroso, con un'applicazione COM può essere precaricata una specifica versione del runtime a livello di codice, richiamando il metodo CorBindToRuntimeHost esportato da mscoree.dll. In alternativa, l'applicazione può utilizzare una diversa versione del runtime, in base alla classe COM attivata, richiamando il metodo GetRequestedRuntimeVersionForCLSID, anch'esso esportato da mscoree.dll, e passando il valore restituito a CorBindToRuntimeHost.

In assenza di questi fattori, con il codice di avvio viene caricata la più recente versione compatibile del runtime installata sul computer.

Risoluzione dei tipi

Se nel Registro di sistema di Windows sono presenti più versioni di un assembly contenente il tipo da attivare, per impostazione predefinita il runtime determina il caricamento della versione più recente.

Se l'applicazione COM dispone di un file di configurazione dell'applicazione, è possibile reindirizzare l'associazione a un tipo di una specifica versione di un assembly. Per ulteriori informazioni, vedere Configurazione di un'applicazione COM per l'esecuzione affiancata.

Nota

I componenti installati con .NET Framework versione 1.0 non dispongono di chiavi del Registro di sistema dipendenti dalla versione. Per questi componenti, sul computer è disponibile una sola versione di un tipo utilizzabile da COM.

Vedere anche

Concetti

Chiavi del Registro di sistema dipendenti dalla versione
Configurazione di un'applicazione COM per l'esecuzione affiancata
Applicazione di attributi dipendenti dalla versione
Componenti COM ed esecuzione affiancata

Altre risorse

Esecuzione side-by-side per l'interoperabilità COM