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.
Seiring bertambahnya jumlah komponen yang tersedia, menjadi semakin sulit untuk mengelola komponen-komponen ini. Dalam hal antarmuka yang mereka ekspos serta tugas yang mereka lakukan, banyak komponen menawarkan fungsionalitas yang sama.
Seringkali perlu untuk menghitung komponen yang dapat digunakan dalam konteks tertentu. Contohnya adalah kotak dialog Sisipkan Objek yang digunakan dalam dokumen gabungan OLE dan kotak dialog Sisipkan Kontrol yang digunakan dalam kontrol OLE. Kotak dialog ini mencantumkan semua komponen yang memenuhi (atau mengklaim untuk memenuhi) kontrak antarmuka untuk dokumen atau kontrol gabungan. Kategori yang ada ini (dokumen OLE, kontrol OLE) tidak menyiratkan tanda tangan antarmuka yang tepat. Dokumen OLE harus mengekspos serangkaian antarmuka inti tertentu (misalnya, IOleObject atau IPersistStorage) tetapi juga dapat mengekspos antarmuka tambahan seperti IOleLink.
Di masa lalu, komponen telah ditandai dengan menambahkan nama yang dapat dibaca manusia ("Insertable", "Control", dan sebagainya) sebagai subkuntang ke kunci registri HKEY_CLASSES_ROOT\CLSID\{...} yang sesuai dengan komponen. Ini berfungsi dengan baik untuk definisi pusat kategori tetapi berisiko tabrakan nama ketika banyak pihak independen mendefinisikan kategori baru. Seperti di bidang COM lainnya, solusi untuk menyediakan namespace yang dapat diperluas terletak pada penggunaan pengidentifikasi unik global (GUID). Alih-alih menggunakan nama yang dapat dibaca manusia, nomor unik (CATID) ditetapkan untuk setiap kategori.
Batasan lain dengan kategorisasi yang ada adalah terbatas pada mengekspresikan kemampuan komponen itu sendiri. Banyak komponen memerlukan kemampuan tertentu dari kontainer. Ketika komponen seperti itu dimasukkan ke dalam kontainer, penyisipan dapat gagal atau berperilaku tidak terduga, meskipun komponen memenuhi kontrak yang tersirat oleh salah satu kategorinya. Untuk menghitung komponen yang dapat digunakan dengan sukses dalam situasi tertentu, kemampuan komponen dan kontainer harus dipertimbangkan.
Karena pertimbangan ini, perubahan berikut dilakukan pada kategorisasi yang ada:
- Kategori ditunjukkan dengan menggunakan CATID yang merupakan pengidentifikasi unik global.
- Di bawah komponen subkuntang kunci registri HKEY_CLASSES_ROOT\CLSID, dua subkuntang terpisah, "Kategori yang Diimplementasikan" dan "Kategori Yang Diperlukan", dikembangkan. Subkunci ini berisi daftar CATID yang disediakan oleh komponen atau yang harus disediakan oleh kontainer komponen.
Untuk memudahkan pengelolaan kategori komponen, kategori tercantum di tempat terpusat di registri: HKEY_CLASSES_ROOT\Component Categories. Kunci ini mencantumkan kategori yang diinstal baik dengan CATID-nya maupun dengan nama yang dapat dibaca manusia yang dilokalkan.
Untuk informasi selengkapnya, lihat topik berikut ini:
- Mengategorikan berdasarkan Kemampuan Komponen
- Mengategorikan berdasarkan Kemampuan Kontainer
- Pengelola Kategori Komponen
- Kelas dan Asosiasi Default
- Menentukan Kategori Komponen
- Mengaitkan Ikon dengan Kategori