Bagikan melalui


Mendaftarkan Server EXE yang Sedang Berjalan

Ketika server executable (EXE) diluncurkan, server harus memanggil CoRegisterClassObject, yang mendaftarkan CLSID untuk server dalam apa yang disebut tabel kelas (tabel yang berbeda dari tabel objek yang sedang berjalan). Ketika server terdaftar dalam tabel kelas, server memungkinkan manajer kontrol layanan (SCM) untuk menentukan bahwa tidak perlu meluncurkan kelas lagi, karena server sudah berjalan. Hanya jika server tidak tercantum dalam tabel kelas, SCM akan memeriksa registri untuk nilai yang sesuai dan meluncurkan server yang terkait dengan CLSID yang diberikan.

Anda meneruskan CoRegisterClassObject CLSID untuk kelas dan pointer ke antarmuka IUnknown-nya. Klien yang kemudian memanggil CoGetClassObject dengan CLSID ini akan mengambil pointer ke antarmuka yang diminta, selama keamanan tidak melarangnya. (Lihat Fungsi Pembantu Pembuatan Instans untuk deskripsi beberapa fungsi pembuatan dan aktivasi instans.)

Server untuk objek kelas harus memanggil CoRevokeClassObject untuk mencabut objek kelas (menghapus pendaftarannya) ketika semua hal berikut ini benar:

  • Tidak ada instans definisi objek yang ada.
  • Tidak ada kunci pada objek kelas.
  • Aplikasi yang menyediakan layanan ke objek kelas tidak berada di bawah kontrol pengguna (tidak terlihat oleh pengguna pada tampilan).

Menginstal sebagai Aplikasi Layanan

Mendaftarkan Kelas di Penginstalan

Mendaftarkan Objek di ROT

Pendaftaran Mandiri