Objek Kelas Peristiwa COM+
Layanan PERISTIWA COM+ menggunakan objek kelas peristiwa untuk mengelola koneksi antara penerbit dan pelanggan. Objek kelas peristiwa adalah komponen COM+ yang dikelola dan disimpan oleh sistem COM+ Events dan berisi antarmuka dan metode yang digunakan oleh penerbit untuk mengaktifkan peristiwa. Ini adalah objek persisten yang menunjukkan peristiwa yang dapat terjadi dan, secara opsional, mengidentifikasi penerbit. Anda menentukan antarmuka dan metode yang Anda inginkan untuk dimuat oleh kelas peristiwa dengan menyediakan pustaka jenis.
Untuk mengaktifkan peristiwa, penerbit membuat instans objek kelas peristiwa dengan memanggil CoCreateInstance atau metode Microsoft Visual Basic CreateObject dan meminta antarmuka peristiwa dikembalikan. Objek kelas event yang diinstansiasi berisi implementasi sistem event dari antarmuka yang diminta. Pelanggan yang tertarik juga harus menerapkan antarmuka kelas peristiwa untuk menerima peristiwa dari penerbit tertentu. Ketika objek kelas peristiwa dibuat, sistem peristiwa mengaitkannya dengan pelanggan yang sesuai. Daftar pelanggan dipertahankan selama masa pakai objek kelas peristiwa. Peristiwa dapat dikirimkan ke beberapa pelanggan baik secara serial atau paralel.
Saat Anda menerapkan objek kelas peristiwa, Anda harus menyediakan DLL yang mendaftar sendiri yang mengekspor fungsi DllRegisterServer dan fungsi DllUnregisterServer. Fungsi DllRegisterServer mendaftarkan kelas COM, dan fungsi DllUnregisterServer membatalkan pendaftaran komponen. Objek kelas peristiwa disimpan dalam katalog COM+, baik dengan menggunakan alat administrasi Layanan Komponen atau secara terprogram dengan menggunakan metode ICOMAdminCatalog::InstallEventClass atau ICOMAdminCatalog::InstallMultipleEventClasses antarmuka. Untuk informasi terperinci tentang mendaftarkan objek kelas peristiwa, lihat Mendaftarkan Kelas Peristiwa.
Karena objek kelas acara adalah komponen yang dikonfigurasi, atribut lain seperti antrean, transaksi, keamanan, dan sebagainya, dapat dikonfigurasi untuk mereka dengan menggunakan alat administrasi Layanan Komponen atau fungsi SDK Administratif COM+.
Nota
Layanan COM+ Events menggunakan pengelolaan pustaka tipe. Ini menempatkan beberapa batasan pada antarmuka kelas peristiwa. Misalnya, marshaler pustaka jenis tidak mendukung atribut MIDL size_is dan length_is.
Objek kelas peristiwa memiliki atribut publikasi yang menentukan cara peristiwa diterbitkan, serta properti berikut:
- EventCLSID. Pengidentifikasi unik yang menentukan CLSID komponen.
- EventClassName. Pengidentifikasi unik yang menentukan PROGID komponen.
- TypeLibrary. Menyediakan daftar antarmuka yang ditawarkan oleh objek kelas peristiwa. Tidak perlu mengimplementasikan antarmuka pemicu yang ditentukan dalam pustaka tipe.
Topik terkait