Bagikan melalui


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

ICE03
ICE06
ICE32
ICE45
ICE46
ICE69