Condividi tramite


Preparazione di un assembly per COM

Di seguito sono elencate le informazioni da fornire agli sviluppatori COM che intendono incorporare tipi gestiti nella propria applicazione:

  • Un elenco dei tipi che le applicazioni COM possono utilizzare

    Alcuni tipi gestiti sono invisibili a COM. Alcuni sono visibili ma non creabili. Altri, infine, sono visibili e creabili. Un assembly può contenere qualsiasi combinazione di tipi invisibili, visibili, non creabili e creabili. Identificare, per completezza, i tipi dell'assembly che si prevede di esporre a COM, soprattutto se si tratta di un sottoinsieme dei tipi esposti a .NET Framework.

    Per ulteriori informazioni, vedere Qualificazione di tipi .NET per l'interoperabilità.

  • Istruzioni per il controllo delle versioni

    Le classi gestite che implementano l'interfaccia della classe (una interfaccia generata dall'interoperabilità COM) sono soggette a restrizioni relative al controllo delle versioni.

    Per indicazioni sull'utilizzo dell'interfaccia della classe, vedere Introduzione all'interfaccia della classe.

  • Istruzioni per la distribuzione

    Gli assembly con nome sicuro firmati da un editore possono essere installati nella Global Assembly Cache. Gli assembly non firmati devono essere installati sul computer dell'utente come assembly privati.

    Per ulteriori informazioni, vedere Considerazioni sulla sicurezza degli assembly.

  • Inclusione di librerie dei tipi

    Quando vengono utilizzati da una applicazione COM, i tipi richiedono quasi sempre una libreria dei tipi. È possibile generare una libreria dei tipi o rimettere tale attività agli sviluppatori COM. Le seguenti opzioni di .NET Framework SDK consentono di generare una libreria dei tipi:

    • Utilità di esportazione della libreria dei tipi

    • Classe TypeLibConverter

    • Strumento di registrazione degli assembly

    • Strumento di installazione dei servizi .NET

    Indipendentemente dal sistema scelto, solo i tipi pubblici definiti nell'assembly che si fornisce verranno inclusi nella libreria dei tipi generata.

    È possibile creare il package di una libreria dei tipi come file separato oppure incorporarla come file di risorse Win32 in un'applicazione basata su .NET. In Microsoft Visual Basic 6.0, questa operazione viene eseguita automaticamente. Se si utilizza Microsoft Visual Basic 2005, è invece necessario incorporare la libreria dei tipi manualmente. Per istruzioni, vedere Procedura: incorporare librerie dei tipi come risorse Win32 nelle applicazioni basate su .NET.

Utilità di esportazione della libreria dei tipi

L'utilità di esportazione della libreria dei tipi (Tlbexp.exe) è uno strumento della riga di comando che converte le classi e le interfacce contenute in un assembly in una libreria dei tipi COM. Una volta rese disponibili le informazioni sui tipi della classe, i client COM potranno creare un'istanza della classe .NET e chiamarne i metodi, esattamente come se si trattasse di un oggetto COM. Tlbexp.exe converte un intero assembly in blocco. Non è possibile utilizzare Tlbexp.exe per generare informazioni sui tipi per un sottoinsieme dei tipi definiti in un assembly.

Classe TypeLibConverter

La classe TypeLibConverter, inclusa nello spazio dei nomi System.Runtime.Interop, converte le classi e le interfacce contenute in un assembly in una libreria dei tipi COM. Questa API produce le stesse informazioni sui tipi che vengono fornite dall'utilità di esportazione della libreria dei tipi, descritta nella sezione precedente.

La classe TypeLibConverter implementa l'interfaccia ITypeLibConverter.

Strumento di registrazione degli assembly

Se usato con l'opzione /tlb:, lo strumento di registrazione degli assembly (Regasm.exe) è in grado di generare e registrare una libreria dei tipi. I client COM richiedono che le librerie dei tipi siano installate nel Registro di sistema di Windows. Se non si utilizza questa opzione, Regasm.exe registra solo i tipi contenuti in un assembly, non la libreria dei tipi. La registrazioni dei tipi in un assembly e la registrazione della libreria dei tipi sono due attività distinte.

Strumento di installazione dei servizi .NET

Lo strumento di installazione dei servizi .NET (Regsvcs.exe) aggiunge classi gestite ai servizi componenti di Windows 2000 e combina in un unico strumento diverse attività. Oltre a eseguire il caricamento e la registrazione di un assembly, Regsvcs.exe è in grado di generare, registrare e installare la libreria dei tipi in un'applicazione COM+ 1.0 esistente.

Vedere anche

Attività

Procedura: incorporare librerie dei tipi come risorse Win32 nelle applicazioni basate su .NET

Riferimenti

Utilità di esportazione della libreria dei tipi (Tlbexp.exe)
TypeLibConverter Class
ITypeLibConverter Interface

Concetti

Esposizione di componenti .NET Framework a COM
Qualificazione di tipi .NET per l'interoperabilità
Introduzione all'interfaccia della classe
Considerazioni sulla protezione degli assembly
Registrazione di assembly presso COM