Bagikan melalui


Panduan: Membuat Objek COM dengan Visual Basic

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

  1. Buka proyek Aplikasi Windows baru dari menu File dengan mengklik Proyek Baru.

  2. 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.

  3. Pilih Tambahkan Item Baru dari menu Proyek . Kotak dialog Tambahkan Item Baru ditampilkan.

  4. Pilih Kelas COM dari daftar Templat , lalu klik Tambahkan. Visual Basic menambahkan kelas baru dan mengonfigurasi proyek baru untuk interop COM.

  5. Tambahkan kode seperti properti, metode, dan peristiwa ke kelas COM.

  6. 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

  1. Buka proyek Aplikasi Windows baru dari menu File dengan mengklik ProyekBaru.

  2. 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.

  3. Di Penjelajah Solusi, klik kanan proyek Anda, lalu klik Properti. Perancang Proyek ditampilkan.

  4. Klik tab Kompilasi.

  5. Pilih kotak centang Daftar untuk Interop COM .

Untuk menyiapkan kode di kelas Anda untuk membuat objek COM

  1. Di Penjelajah Solusi, klik dua kali Class1.vb untuk menampilkan kodenya.

  2. Ganti nama kelas menjadi ComClass1.

  3. 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 = ""
    
  4. Pada menu Alat , klik Buat Guid. Dalam kotak dialog Buat GUID , klik Format Registri lalu klik Salin. Klik Keluar.

  5. Ganti string kosong untuk ClassId dengan 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"
    
  6. Ulangi langkah-langkah sebelumnya untuk InterfaceId konstanta dan EventsId , 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.

  7. ComClass Tambahkan atribut ke ComClass1, menentukan GUID untuk ID Kelas, ID Antarmuka, dan ID Peristiwa seperti dalam contoh berikut:

    <ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)>
    Public Class ComClass1
    
  8. Kelas 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 Sub
    
  9. Tambahkan properti, metode, dan peristiwa ke kelas, mengakhirinya dengan End Class pernyataan. 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.

Lihat juga