ComClassAttribute Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Attributet ComClassAttribute instruerar kompilatorn att lägga till metadata som gör att en klass kan exponeras som ett COM-objekt.
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
- Arv
- Attribut
Exempel
Om du vill köra det här exemplet skapar du ett nytt klassbiblioteksprogram och lägger till följande kod i en klassmodul.
<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
Kommentarer
Använd ComClassAttribute för att förenkla processen med att exponera COM-komponenter från Visual Basic. COM-objekt skiljer sig mycket från .NET Framework-sammansättningar. Utan ComClassAttribute måste du följa ett antal steg för att generera ett COM-objekt från Visual Basic. För klasser som har markerats med ComClassAttributeutför kompilatorn många av dessa steg automatiskt.
Note
Det här attributet förenklar skapandet av COM-objekt. Om du vill exponera en klass som ett COM-objekt måste du kompilera projektet med alternativet Registrera för COM Interop valt i avsnittet Skapa i dialogrutan Konfigurationsegenskaper .
Note
Även om du också kan exponera en klass som skapats med Visual Basic som ett COM-objekt för ohanterad kod att använda, är det inte ett sant COM-objekt. Mer information finns i COM-samverkan i .NET Framework-program.
Konstruktorer
| Name | Description |
|---|---|
| ComClassAttribute() |
Initierar en ny instans av |
| ComClassAttribute(String, String, String) |
Initierar en ny instans av |
| ComClassAttribute(String, String) |
Initierar en ny instans av |
| ComClassAttribute(String) |
Initierar en ny instans av |
Egenskaper
| Name | Description |
|---|---|
| ClassID |
Hämtar ett klass-ID som används för att unikt identifiera en klass. |
| EventID |
Hämtar ett händelse-ID som används för att unikt identifiera en händelse. |
| InterfaceID |
Hämtar ett gränssnitts-ID som används för att unikt identifiera ett gränssnitt. |
| InterfaceShadows |
Anger att COM-gränssnittets namn skuggar en annan medlem i klassen eller basklassen. |
| TypeId |
När den implementeras i en härledd klass hämtar du en unik identifierare för den här Attribute. (Ärvd från Attribute) |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Returnerar ett värde som anger om den här instansen är lika med ett angivet objekt. (Ärvd från Attribute) |
| GetHashCode() |
Returnerar hash-koden för den här instansen. (Ärvd från Attribute) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| IsDefaultAttribute() |
När den åsidosättas i en härledd klass anger du om värdet för den här instansen är standardvärdet för den härledda klassen. (Ärvd från Attribute) |
| Match(Object) |
När den åsidosätts i en härledd klass returneras ett värde som anger om den här instansen är lika med ett angivet objekt. (Ärvd från Attribute) |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| ToString() |
Returnerar en sträng som representerar det aktuella objektet. (Ärvd från Object) |
Explicita gränssnittsimplementeringar
| Name | Description |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappar en uppsättning namn till en motsvarande uppsättning av sändningsidentifierare. (Ärvd från Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Hämtar typinformationen för ett objekt, som kan användas för att hämta typinformationen för ett gränssnitt. (Ärvd från Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Hämtar antalet typinformationsgränssnitt som ett objekt tillhandahåller (antingen 0 eller 1). (Ärvd från Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Ger åtkomst till egenskaper och metoder som exponeras av ett objekt. (Ärvd från Attribute) |