Condividi tramite


Confezionamento di un assembly .NET Framework per COM

Gli sviluppatori COM possono trarre vantaggio dalle informazioni seguenti sui tipi gestiti che intendono incorporare nell'applicazione:

  • Elenco di tipi che le applicazioni COM possono utilizzare

    Alcuni tipi gestiti sono invisibili a COM; alcuni sono visibili ma non creabili; e alcuni sono sia visibili che creabili. Un'assemblea può includere qualsiasi combinazione di tipi invisibili, visibili, creabili e non creabili. Per completezza, identificate i tipi nell'assembly che intendete esporre a COM, soprattutto quando questi tipi sono un sottoinsieme dei tipi esposti al .NET Framework.

    Per altre informazioni, vedere Qualificazione dei tipi .NET per l'interoperabilità.

  • Istruzioni di controllo delle versioni

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

    Per linee guida sull'uso dell'interfaccia della classe, vedere Introduzione all'interfaccia della classe.

  • Istruzioni per la distribuzione

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

    Per altre informazioni, vedere Considerazioni sulla sicurezza degli assembly.

  • Inclusione della libreria di tipi

    La maggior parte dei tipi richiede una libreria dei tipi quando viene utilizzata da un'applicazione COM. È possibile generare una libreria dei tipi o fare in modo che gli sviluppatori COM eseguano questa attività. Windows SDK offre le opzioni seguenti per la generazione di una libreria dei tipi:

    Indipendentemente dal meccanismo scelto, nella libreria dei tipi generati vengono inclusi solo i tipi pubblici definiti nell'assembly fornito.

Per istruzioni, vedere Procedura: Incorporare librerie dei tipi come risorse Win32 in .NET-Based applicazioni.

Esportatore libreria di tipi

L'utilità di esportazione della libreria dei tipi (Tlbexp.exe) è uno strumento a riga di comando che converte le classi e le interfacce contenute in un assembly in una libreria dei tipi COM. Una volta disponibili le informazioni sul tipo della classe, i client COM possono creare un'istanza della classe .NET e chiamare i metodi dell'istanza, come se fosse un oggetto COM. Tlbexp.exe converte un intero assemblaggio in un'unica soluzione. Non è possibile utilizzare Tlbexp.exe per generare informazioni sui tipi per un sottoinsieme dei tipi definiti in un assembly.

Classe TypeLibConverter

La TypeLibConverter classe, che si trova 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 dell'Esportatore della Libreria di Tipi, descritto nella sezione precedente.

La classe TypeLibConverter implementa ITypeLibConverter.

Strumento di registrazione degli assemblaggi

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

Strumento di installazione dei servizi .NET

Lo strumento di installazione di .NET Services (Regsvcs.exe) aggiunge classi gestite a Servizi componenti di Windows 2000 e combina diverse attività all'interno di un singolo strumento. Oltre a caricare e registrare un assembly, è possibile per Regsvcs.exe generare, registrare e installare la libreria dei tipi in un'applicazione COM+ 1.0 esistente.

Vedere anche