ComClassAttribute Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Atribut ComClassAttribute
menginstruksikan pengkompilasi untuk menambahkan metadata yang memungkinkan kelas diekspos sebagai objek 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
- Warisan
- Atribut
Contoh
Untuk menjalankan contoh ini, buat aplikasi Pustaka Kelas baru dan tambahkan kode berikut ke modul kelas.
<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
Keterangan
Gunakan ComClassAttribute
untuk menyederhanakan proses mengekspos komponen COM dari Visual Basic. Objek COM sangat berbeda dari rakitan .NET Framework; tanpa ComClassAttribute
, Anda perlu mengikuti sejumlah langkah untuk menghasilkan objek COM dari Visual Basic. Untuk kelas yang ditandai dengan ComClassAttribute
, compiler melakukan banyak langkah ini secara otomatis.
Catatan
Atribut ini menyederhanakan pembuatan objek COM. Untuk mengekspos kelas sebagai objek COM, Anda harus mengkompilasi proyek dengan opsi Daftar untuk Interop COM yang dipilih di bagian Build dari kotak dialog Properti Konfigurasi .
Catatan
Meskipun Anda juga dapat mengekspos kelas yang dibuat dengan Visual Basic sebagai objek COM untuk digunakan kode yang tidak dikelola, itu bukan objek COM yang sebenarnya. Untuk detailnya, lihat Interoperabilitas COM dalam Aplikasi .NET Framework.
Konstruktor
ComClassAttribute() |
Menginisialisasi instans baru kelas |
ComClassAttribute(String) |
Menginisialisasi instans baru kelas |
ComClassAttribute(String, String) |
Menginisialisasi instans baru kelas |
ComClassAttribute(String, String, String) |
Menginisialisasi instans baru kelas |
Properti
ClassID |
Mendapatkan ID kelas yang digunakan untuk mengidentifikasi kelas secara unik. |
EventID |
Mendapatkan ID peristiwa yang digunakan untuk mengidentifikasi peristiwa secara unik. |
InterfaceID |
Mendapatkan ID antarmuka yang digunakan untuk mengidentifikasi antarmuka secara unik. |
InterfaceShadows |
Menunjukkan bahwa nama antarmuka COM membayangi anggota lain dari kelas atau kelas dasar. |
TypeId |
Ketika diimplementasikan di kelas turunan, mendapatkan pengidentifikasi unik untuk ini Attribute. (Diperoleh dari Attribute) |
Metode
Equals(Object) |
Mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu. (Diperoleh dari Attribute) |
GetHashCode() |
Mengembalikan kode hash untuk instans ini. (Diperoleh dari Attribute) |
GetType() |
Mendapatkan instans Type saat ini. (Diperoleh dari Object) |
IsDefaultAttribute() |
Ketika ditimpa di kelas turunan, menunjukkan apakah nilai instans ini adalah nilai default untuk kelas turunan. (Diperoleh dari Attribute) |
Match(Object) |
Saat ditimpa di kelas turunan, mengembalikan nilai yang menunjukkan apakah instans ini sama dengan objek tertentu. (Diperoleh dari Attribute) |
MemberwiseClone() |
Membuat salinan dangkal dari yang saat ini Object. (Diperoleh dari Object) |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |
Implementasi Antarmuka Eksplisit
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Memetakan sekumpulan nama ke sekumpulan pengidentifikasi pengiriman yang sesuai. (Diperoleh dari Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Mengambil informasi jenis untuk objek, yang dapat digunakan untuk mendapatkan informasi jenis untuk antarmuka. (Diperoleh dari Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Mengambil jumlah antarmuka informasi jenis yang disediakan objek (baik 0 atau 1). (Diperoleh dari Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Menyediakan akses ke properti dan metode yang diekspos oleh objek. (Diperoleh dari Attribute) |