Pemrosesan Pesan Panel Kontrol

Fungsi panggilan balik CPlApplet memproses semua pesan yang dikirim ke item Panel Kontrol oleh Windows. Pesan yang dikirim ke fungsi berada dalam urutan tertentu. Dengan token yang sama, item .cpl mengharuskan pesan diproses dengan cara tertentu.

Pertama, fungsi CPlApplet menerima pesan CPL_INIT ketika Windows pertama kali memuat item Panel Kontrol. Fungsi harus melakukan inisialisasi apa pun, seperti mengalokasikan memori, dan mengembalikan nonzero. Jika CPlApplet tidak dapat menyelesaikan inisialisasi, CPlApplet harus mengembalikan nol, mengarahkan Windows untuk mengakhiri komunikasi dan melepaskan DLL.

Selanjutnya, jika pesan CPL_INIT berhasil, Windows akan mengirim pesan CPL_GETCOUNT. Fungsi kemudian harus mengembalikan jumlah item Panel Kontrol yang didukung oleh file .dll.

Fungsi CPlApplet kemudian menerima satu pesan CPL_INQUIRE dan satu pesan CPL_NEWINQUIRE untuk setiap item Panel Kontrol yang didukung oleh file .dll. Fungsi ini mengisi struktur CPLINFO atau NEWCPLINFO dengan informasi tentang item Anda, seperti nama, ikon, dan string deskriptif. Sebagian besar aplikasi harus memproses pesan CPL_INQUIRE dan mengabaikan pesan CPL_NEWINQUIRE. Pesan CPL_INQUIRE menyediakan informasi dalam bentuk yang dapat di-cache Windows, yang menghasilkan performa yang jauh lebih baik. Pesan CPL_NEWINQUIRE digunakan hanya jika Anda perlu mengubah ikon item atau string tampilan berdasarkan status komputer. Panel Kontrol item yang menggunakan CPL_NEWINQUIRE tidak dapat ditemukan oleh pencarian menu Mulai di Windows Vista karena bergantung pada penembolokan.

Fungsi CPlApplet berikutnya menerima pesan CPL_DBLCLK sebagai pemberitahuan bahwa pengguna telah memilih ikon yang mewakili item Panel Kontrol. Fungsi mungkin menerima pesan ini beberapa kali. Pesan mencakup pengidentifikasi item dan penunjuk lpData yang dikembalikan dalam struktur CPLINFO atau NEWCPLINFO dalam panggilan ke CPL_INQUIRE atau CPL_NEWINQUIRE. Fungsi harus menampilkan kotak dialog yang sesuai dan memproses input pengguna berikutnya.

Selain CPL_DBLCLK, pesan CPL_STARTWPARMS dapat dikirim jika item Panel Kontrol dipanggil dengan parameter input, seperti dari prompt perintah atau dari program lain. Pesan menyertakan pengidentifikasi item bersama dengan string parameter tambahan.

Sebelum aplikasi pengontrol berakhir, CPlApplet menerima pesan CPL_STOP sekali untuk setiap item Panel Kontrol yang didukung oleh file .dll. Pesan mencakup pengidentifikasi untuk item Panel Kontrol dan penunjuk lpData yang dikembalikan dalam struktur CPLINFO atau NEWCPLINFO dalam panggilan ke CPL_INQUIRE atau CPL_NEWINQUIRE. Fungsi harus membebaskan memori apa pun yang dialokasikan untuk kotak dialog yang ditentukan.

Setelah pesan CPL_STOP terakhir, CPlApplet menerima pesan CPL_EXIT. Fungsi ini harus membebaskan semua memori yang dialokasikan yang tersisa dan membatalkan pendaftaran kelas jendela privat apa pun yang mungkin telah didaftarkannya. Segera setelah fungsi kembali dari pesan ini, Windows merilis item Panel Kontrol dengan memanggil fungsi FreeLibrary.

Item Panel Kontrol

Panduan Pengalaman Pengguna

Mendaftarkan Item Panel Kontrol

Menggunakan CPLApplet

Menjalankan Item Panel Kontrol

Memperluas Item Panel Kontrol Sistem

Menetapkan Kategori Panel Kontrol

Membuat Tautan Tugas yang Dapat Dicari untuk Item Panel Kontrol

Mengakses Panel Kontrol dalam Mode Aman di bawah Windows Vista