Tabel ServiceControl
Tabel ServiceControl digunakan untuk mengontrol layanan yang diinstal atau dihapus instalasinya.
Catatan
Layanan yang mengandalkan keberadaan perakitan di Global Assembly Cache (GAC) tidak dapat diinstal atau mulai menggunakan tabel ServiceInstall dan ServiceControl. Jika Anda perlu memulai layanan yang bergantung pada rakitan di GAC, Anda harus menggunakan tindakan kustom yang diurutkan setelah tindakan InstallFinalize atau tindakan kustom penerapan. Untuk informasi tentang menginstal rakitan ke GAC, lihat Penginstalan Assembly ke Global Assembly Cache.
Tabel ServiceControl memiliki kolom berikut.
Kolom | Jenis | Kunci | Dapat diubah ke null |
---|---|---|---|
ServiceControl | Pengidentifikasi | Y | N |
Nama | Diformat | N | N |
Kejadian | Bilangan bulat | N | N |
Argumen | Diformat | N | Y |
Tunggu | Bilangan bulat | N | Y |
Komponen_ | Pengidentifikasi | N | N |
Kolom
-
ServiceControl
-
Ini adalah kunci utama tabel ini.
-
Nama
-
Kolom ini adalah string yang memberi nama layanan. Kolom ini dapat digunakan untuk mengontrol layanan yang tidak diinstal.
-
Acara
-
Kolom ini berisi operasi yang akan dilakukan pada layanan bernama. Perhatikan bahwa saat menghentikan layanan, semua layanan yang bergantung pada layanan tersebut juga dihentikan. Saat menghapus layanan yang sedang berjalan, alat penginstal menghentikan layanan.
Nilai dalam bidang ini adalah bidang bit yang dapat digabungkan menjadi satu nilai yang mewakili beberapa operasi.
Nilai berikut hanya digunakan selama penginstalan.
Terus-menerus Heksadesimal Desimal Deskripsi msidbServiceControlEventStart 0x001 1 Memulai layanan selama tindakan StartServices. msidbServiceControlEventStop 0x002 2 Menghentikan layanan selama tindakan StopServices. (tidak ada) 0x004 4 <Dipesan> msidbServiceControlEventDelete 0x008 8 Menghapus layanan selama tindakan DeleteServices. Nilai berikut ini hanya digunakan selama penghapusan instalasi.
Terus-menerus Heksadesimal Desimal Deskripsi msidbServiceControlEventUninstallStart 0x010 16 Memulai layanan selama tindakan StartServices. msidbServiceControlEventUninstallStop 0x020 32 Menghentikan layanan selama tindakan StopServices. (tidak ada) 0x040 64 <Dipesan> msidbServiceControlEventUninstallDelete 0x080 128 Menghapus layanan selama tindakan DeleteServices. -
Argumen
-
Daftar argumen untuk memulai layanan. Argumen dipisahkan oleh karakter null [~]. Misalnya, daftar argumen Satu, Dua, dan Tiga tercantum sebagai: Satu[~]Dua[~]Tiga.
-
Tunggu
-
Membiarkan bidang ini null atau memasukkan nilai 1 menyebabkan alat penginstal menunggu maksimal 30 detik agar layanan selesai sebelum melanjutkan. Penantian dapat digunakan untuk memungkinkan waktu tambahan bagi peristiwa penting untuk mengembalikan kesalahan kegagalan. Nilai 0 di bidang ini berarti menunggu hanya sampai manajer kontrol layanan (SCM) melaporkan bahwa layanan ini dalam status tertunda sebelum melanjutkan penginstalan.
-
Komponen_
-
Kunci eksternal ke kolom salah satu Tabel Komponen.
Keterangan
Tindakan StartServices, StopServices, dan DeleteServices dalam tabel berurutan memproses informasi dalam tabel ini. Untuk informasi tentang menggunakan tabel urutan, lihat Menggunakan Tabel Urutan.
Gunakan kolom Nama untuk memulai, menghentikan, atau menghapus layanan yang digantikan oleh penginstalan atau yang bergantung pada layanan baru yang sedang diinstal. Misalnya, memasukkan MyService ke kolom ServiceControl dapat mengikat layanan ini ke MyComponent di kolom Component_. Jika bidang bit di kolom Peristiwa diatur untuk memulai saat menginstal, maka penginstal memulai MyService saat menginstal MyComponent.
Validasi