Bagikan melalui


Menulis Penyedia Konsumen Peristiwa

Penyedia konsumen peristiwa adalah komponen arsitektur konsumen permanen yang menentukan peristiwa permanen mana yang ditangani konsumen peristiwa tertentu. Anda harus membuat penyedia konsumen peristiwa bersama dengan konsumen peristiwa permanen Anda untuk merutekan peristiwa dengan benar dari WMI.

Penyedia konsumen peristiwa menautkan penyedia peristiwa dengan daftar kelas konsumen. Instans kelas konsumen ini kemudian menerima peristiwa dari penyedia tersebut. WMI mengidentifikasi penyedia konsumen mana peristiwa yang dikirimkan, berdasarkan instans __EventConsumerProviderRegistration , yang mengaitkan penyedia konsumen __Win32Provider instans dengan kelas konsumen logis. Pengguna membuat instans kelas konsumen sebagai bagian dari langganan permanen. Jika penyedia peristiwa tidak berjalan ketika peristiwa terjadi, maka WMI memulai penyedia ketika perlu mengirimkan peristiwa.

Prosedur berikut menjelaskan cara menerapkan penyedia konsumen peristiwa.

Untuk mengimplementasikan penyedia konsumen peristiwa

  1. Rancang kelas konsumen dalam Managed Object Format (MOF) dan daftarkan dengan WMI. Untuk informasi selengkapnya, lihat Mendesain Kelas Managed Object Format (MOF).

    Penyedia kelas mendaftar dengan WMI dengan membuat instans __Win32Provider dan kelas __EventConsumerProviderRegistration . Untuk informasi selengkapnya, lihat Mendaftarkan Penyedia Konsumen Peristiwa.

  2. Terapkan antarmuka IWbemProviderInit untuk penyedia Anda.

    WMI menggunakan IWbemProviderInit untuk memuat dan menginisialisasi penyedia. Untuk informasi selengkapnya, lihat Menginisialisasi Penyedia.

    Catatan

    Penyedia konsumen peristiwa sangat didorong untuk menggunakan model multithreading "Keduanya".

     

  3. Terapkan antarmuka IWbemEventConsumerProvider untuk penyedia Anda.

    Antarmuka IWbemEventConsumerProvider adalah antarmuka utama untuk penyedia konsumen peristiwa.

  4. Pasokan satu atau beberapa konsumen fisik untuk menerima pesan peristiwa dari WMI.

    Konsumen fisik adalah objek COM yang mewakili konsumen peristiwa permanen. Semua konsumen fisik harus menerapkan antarmuka IWbemUnboundObjectSink . Untuk informasi selengkapnya, lihat Menerapkan Konsumen Fisik.