Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Saat membuat aplikasi atau komponen baru, yang terbaik adalah membuat rakitan .NET Framework. Namun, Visual Basic juga memudahkan untuk mengekspos komponen .NET Framework ke COM. Ini memungkinkan Anda menyediakan komponen baru untuk suite aplikasi sebelumnya yang memerlukan komponen COM. Panduan ini menunjukkan cara menggunakan Visual Basic untuk mengekspos objek .NET Framework sebagai objek COM, baik dengan maupun tanpa templat kelas COM.
Cara term mudah untuk mengekspos objek COM adalah dengan menggunakan templat kelas COM. Templat ini membuat kelas baru, lalu mengonfigurasi proyek Anda untuk menghasilkan kelas dengan lapisan interoperabilitas sebagai objek COM, dan mendaftarkannya dengan sistem operasi.
Nota
Meskipun Anda juga dapat mengekspos kelas yang dibuat di Visual Basic sebagai objek COM untuk kode yang tidak dikelola untuk digunakan, itu bukan objek COM yang benar dan tidak dapat digunakan oleh Visual Basic. Untuk informasi selengkapnya, lihat Interoperabilitas COM di Aplikasi .NET Framework.
Nota
Komputer Anda mungkin menampilkan nama atau lokasi yang berbeda untuk beberapa elemen antarmuka pengguna Visual Studio dalam instruksi berikut. Edisi Visual Studio yang Anda miliki dan pengaturan yang Anda gunakan menentukan elemen-elemen ini. Untuk informasi lebih lanjut, lihat Mempersonalisasi IDE.
Untuk membuat objek COM dengan menggunakan templat kelas COM
Buka proyek Aplikasi Windows baru dari menu File dengan mengklik Proyek Baru.
Dalam kotak dialog Proyek Baru di bawah bidang Tipe Proyek , centang apakah Windows dipilih. Pilih Pustaka Kelas dari daftar Templat , lalu klik OK. Proyek baru telah ditampilkan.
Pilih Tambahkan Item Baru dari menu Proyek . Kotak dialog Tambahkan Item Baru ditampilkan.
Pilih Kelas COM dari daftar Templat , lalu klik Tambahkan. Visual Basic menambahkan kelas baru dan mengonfigurasi proyek baru untuk interop COM.
Tambahkan kode seperti properti, metode, dan peristiwa ke kelas COM.
Pilih Buat ClassLibrary1 dari menu Build. Visual Basic membangun perakitan dan mendaftarkan objek COM dengan sistem operasi.
Membuat Objek COM tanpa Templat Kelas COM
Anda juga dapat membuat kelas COM secara manual alih-alih menggunakan templat kelas COM. Prosedur ini berguna ketika Anda bekerja dari baris perintah atau ketika Anda ingin lebih mengontrol bagaimana objek COM ditentukan.
Untuk menyiapkan proyek Anda untuk menghasilkan objek COM
Buka proyek Aplikasi Windows baru dari menu File dengan mengklik ProyekBaru.
Dalam kotak dialog Proyek Baru di bawah bidang Tipe Proyek , centang apakah Windows dipilih. Pilih Pustaka Kelas dari daftar Templat , lalu klik OK. Proyek baru telah ditampilkan.
Di Penjelajah Solusi, klik kanan proyek Anda, lalu klik Properti. Perancang Proyek ditampilkan.
Klik tab Kompilasi.
Pilih kotak centang Daftar untuk Interop COM .
Untuk menyiapkan kode di kelas Anda untuk membuat objek COM
Di Penjelajah Solusi, klik dua kali Class1.vb untuk menampilkan kodenya.
Ganti nama kelas menjadi
ComClass1.Tambahkan konstanta berikut ke
ComClass1. Mereka akan menyimpan konstanta Pengidentifikasi Unik Global (GUID) yang harus dimiliki objek COM.Public Const ClassId As String = "" Public Const InterfaceId As String = "" Public Const EventsId As String = ""Pada menu Alat , klik Buat Guid. Dalam kotak dialog Buat GUID , klik Format Registri lalu klik Salin. Klik Keluar.
Ganti string kosong untuk
ClassIddengan GUID, hapus kurung kurawal di depan dan di belakang. Misalnya, jika GUID yang disediakan oleh Guidgen adalah"{2C8B0AEE-02C9-486e-B809-C780A11530FE}"kode Anda akan muncul sebagai berikut.Public Const ClassId As String = "2C8B0AEE-02C9-486e-B809-C780A11530FE"Ulangi langkah-langkah sebelumnya untuk
InterfaceIdkonstanta danEventsId, seperti dalam contoh berikut.Public Const InterfaceId As String = "3D8B5BA4-FB8C-5ff8-8468-11BF6BD5CF91" Public Const EventsId As String = "2B691787-6ED7-401e-90A4-B3B9C0360E31"Nota
Pastikan bahwa GUID baru dan unik; jika tidak, komponen COM Anda dapat berkonflik dengan komponen COM lainnya.
ComClassTambahkan atribut keComClass1, menentukan GUID untuk ID Kelas, ID Antarmuka, dan ID Peristiwa seperti dalam contoh berikut:<ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)> Public Class ComClass1Kelas COM harus memiliki konstruktor tanpa
Public Sub New()parameter, atau kelas tidak akan mendaftar dengan benar. Tambahkan konstruktor tanpa parameter ke kelas :Public Sub New() MyBase.New() End SubTambahkan properti, metode, dan peristiwa ke kelas, mengakhirinya dengan
End Classpernyataan. Pilih Bangun Solusi dari menu Build . Visual Basic membangun perakitan dan mendaftarkan objek COM dengan sistem operasi.Nota
Objek COM yang Anda hasilkan dengan Visual Basic tidak dapat digunakan oleh aplikasi Visual Basic lainnya karena objek tersebut bukan objek COM yang sebenarnya. Upaya untuk menambahkan referensi ke objek COM tersebut akan menimbulkan kesalahan. Untuk detailnya, lihat Interoperabilitas COM di Aplikasi .NET Framework.