ComClassAttribute, classe
Mise à jour : novembre 2007
L'attribut ComClassAttribute demande au compilateur d'ajouter des métadonnées qui permettent à une classe d'être exposée comme un objet COM.
<System.AttributeUsage(System.AttributeTargets.Class, _
Inherited := False, AllowMultiple := False)> _
Public NotInheritable Class ComClassAttribute
Inherits System.Attribute
Notes
Utilisez ComClassAttribute pour simplifier le processus d'exposition des composants COM à partir de Visual Basic. Les objets COM sont très différents des assemblys .NET Framework ; sans le ComClassAttribute, vous devez suivre un certain nombre d'étapes pour générer un objet COM à partir de Visual Basic. Nombre de ces opérations sont automatisées par le compilateur lorsqu'il rencontre des classes marquées avec l'attribut ComClassAttribute.
Remarque : |
---|
Cet attribut simplifie la création d'objets COM. Pour exposer une classe en tant qu'objet COM, vous devez compiler le projet avec l'option Inscrire pour COM Interop sélectionnée dans la section Générer de la boîte de dialogue Propriétés de la configuration. |
Remarque : |
---|
Bien que vous puissiez également exposer une classe créée avec Visual Basic en tant qu'objet COM pour le code non managé à utiliser, il ne s'agit pas d'un vrai objet COM. Pour plus d'informations, consultez Interopérabilité COM dans les applications .NET Framework. |
Exemple
Pour exécuter cet exemple, créez un nouveau projet de type Bibliothèque de classes et ajoutez le code suivant à un module de 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
Configuration requise
Espace de noms :Microsoft.VisualBasic
**Assembly :**bibliothèque Visual Basic Runtime (dans Microsoft.VisualBasic.dll)
Voir aussi
Tâches
Procédure pas à pas : création d'objets COM avec Visual Basic
Concepts
Application d'attributs d'interopérabilité
Attributs utilisés dans Visual Basic
Référence
Membres d'une classe ComClassAttribute
VBFixedStringAttribute, classe
System.Runtime.InteropServices