Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La scrittura di un tipo .NET e l'utilizzo di tale tipo da codice non gestito sono attività distinte per gli sviluppatori. Questa sezione descrive diversi suggerimenti per la scrittura di codice gestito che interagisce con i client COM:
Qualificazione dei tipi .NET per l'interoperabilità.
Tutti i tipi, i metodi, le proprietà, i campi e gli eventi gestiti da esporre a COM devono essere pubblici. I tipi devono avere un costruttore pubblico senza parametri, ovvero l'unico costruttore che può essere richiamato tramite COM.
Applicazione di attributi di interoperabilità.
Gli attributi personalizzati all'interno del codice gestito possono migliorare l'interoperabilità di un componente.
Creazione del pacchetto di un assembly per COM.
Gli sviluppatori COM potrebbero richiedere di riepilogare i passaggi necessari per fare riferimento e distribuire gli assembly.
Inoltre, questa sezione identifica le attività correlate all'utilizzo di un tipo gestito da un client COM.
Per utilizzare un tipo gestito da COM
-
I tipi in un assembly (e le librerie dei tipi) devono essere registrati in fase di progettazione. Se un programma di installazione non registra l'assembly, indicare agli sviluppatori COM di usare Regasm.exe.
Fare riferimento ai tipi .NET da COM.
Gli sviluppatori COM possono fare riferimento ai tipi in un assembly usando gli stessi strumenti e tecniche che usano oggi.
-
Gli sviluppatori COM possono chiamare metodi sull'oggetto .NET nello stesso modo in cui chiamano i metodi in qualsiasi tipo non gestito. Ad esempio, l'API COM
CoCreateInstanceattiva gli oggetti .NET. Distribuire un'applicazione per l'accesso COM.
Un assembly con nome sicuro può essere installato nella Global Assembly Cache e richiede una firma dal suo editore. Gli assembly che non hanno un nome forte devono essere installati nella directory dell'applicazione del client.