ComClassAttribute Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
L'attributo ComClassAttribute
comunica al compilatore di aggiungere i metadati che consentono di esporre una classe come oggetto COM.
public ref class ComClassAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)]
public sealed class ComClassAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false, Inherited=false)>]
type ComClassAttribute = class
inherit Attribute
Public NotInheritable Class ComClassAttribute
Inherits Attribute
- Ereditarietà
- Attributi
Esempio
Per eseguire questo esempio, creare una nuova applicazione libreria di classi e aggiungere il codice seguente a un modulo di classe.
<ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)>
Public Class ComClass1
' Use the Region directive to define a section named COM Guids.
#Region "COM GUIDs"
' These GUIDs provide the COM identity for this class
' and its COM interfaces. You can generate
' these guids using guidgen.exe
Public Const ClassId As String = "7666AC25-855F-4534-BC55-27BF09D49D46"
Public Const InterfaceId As String = "54388137-8A76-491e-AA3A-853E23AC1217"
Public Const EventsId As String = "EA329A13-16A0-478d-B41F-47583A761FF2"
#End Region
Public Sub New()
MyBase.New()
End Sub
Function AddNumbers(ByVal X As Integer, ByVal Y As Integer)
AddNumbers = X + Y
End Function
End Class
Commenti
Usare ComClassAttribute
per semplificare il processo di esposizione dei componenti COM da Visual Basic. Gli oggetti COM sono molto diversi dagli assembly .NET Framework; senza , ComClassAttribute
è necessario seguire una serie di passaggi per generare un oggetto COM da Visual Basic. Per le classi contrassegnate con ComClassAttribute
, il compilatore esegue automaticamente molti di questi passaggi.
Nota
Questo attributo semplifica la creazione di oggetti COM. Per esporre una classe come oggetto COM, è necessario compilare il progetto con l'opzione Register for COM Interop selezionata nella sezione Build della finestra di dialogo Proprietà configurazione .
Nota
Anche se è anche possibile esporre una classe creata con Visual Basic come oggetto COM per il codice non gestito da usare, non è un vero oggetto COM. Per informazioni dettagliate, vedere Interoperabilità COM nelle applicazioni .NET Framework.
Costruttori
ComClassAttribute() |
Inizializza una nuova istanza della classe |
ComClassAttribute(String) |
Inizializza una nuova istanza della classe |
ComClassAttribute(String, String) |
Inizializza una nuova istanza della classe |
ComClassAttribute(String, String, String) |
Inizializza una nuova istanza della classe |
Proprietà
ClassID |
Ottiene un ID di classe utilizzato per identificare una classe in modo univoco. |
EventID |
Ottiene un ID di evento utilizzato per identificare un evento in modo univoco. |
InterfaceID |
Ottiene un ID di interfaccia utilizzato per identificare un'interfaccia in modo univoco. |
InterfaceShadows |
Indica che il nome dell'interfaccia COM nasconde un altro membro della classe o della classe base. |
TypeId |
Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute. (Ereditato da Attribute) |
Metodi
Equals(Object) |
Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato. (Ereditato da Attribute) |
GetHashCode() |
Restituisce il codice hash per l'istanza. (Ereditato da Attribute) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
IsDefaultAttribute() |
In caso di override in una classe derivata, indica se il valore di questa istanza è il valore predefinito per la classe derivata. (Ereditato da Attribute) |
Match(Object) |
Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato. (Ereditato da Attribute) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch. (Ereditato da Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia. (Ereditato da Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1). (Ereditato da Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornisce l'accesso a proprietà e metodi esposti da un oggetto. (Ereditato da Attribute) |