Ini juga dapat dilakukan melalui prompt perintah yang ditinggikan menggunakan sc
perintah. Sintaksnya adalah:
sc config [service name] depend= <Dependencies(separated by / (forward slash))>
Catatan : Ada ruang setelah tanda sama dengan, dan ada tidak satu sebelum.
Peringatan : depend=
parameter akan menimpa daftar dependensi yang ada, bukan menambahkan. Jadi misalnya, jika ServiceA sudah tergantung pada ServiceB dan ServiceC, jika Anda menjalankan depend= ServiceD
, ServiceA sekarang hanya akan bergantung pada ServiceD. (Terima kasih, Matt !)
Contohnya
Ketergantungan pada satu layanan lain:
sc config ServiceA depend= ServiceB
Di atas berarti bahwa ServiceA tidak akan mulai sampai ServiceB telah dimulai. Jika Anda menghentikan ServiceB, ServiceA akan berhenti secara otomatis.
Ketergantungan pada beberapa layanan lain:
sc config ServiceA depend= ServiceB/ServiceC/ServiceD/"Service Name With Spaces"
Di atas berarti bahwa ServiceA tidak akan mulai sampai ServiceB, ServiceC, dan ServiceD semuanya dimulai. Jika Anda menghentikan ServiceB, ServiceC, atau ServiceD, ServiceA akan berhenti secara otomatis.
Untuk menghapus semua dependensi:
sc config ServiceA depend= /
Untuk daftar dependensi saat ini:
sc qc ServiceA
sc qc [service name]
perintahsc.exe
lain Anda akan mendapatkan kesalahan: 'Parameter posisi tidak dapat ditemukan yang menerima argumen'Anda dapat menambahkan dependensi layanan dengan menambahkan nilai "DependOnService" ke layanan di registri menggunakan
regedit
perintah, layanan dapat ditemukan di bawahHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<Service name>
. Rinciannya dapat ditemukan di artikel MS KB 193888 , dari mana ini adalah kutipan dari:sumber
Saya sedang mencari metode murni PowerShell (tanpa regedit atau sc.exe) yang dapat bekerja pada 2008R2 / Win7 dan yang lebih baru, dan muncul dengan ini:
Yang mudah adalah lakukan regedit dengan PowerShell:
Atau, menggunakan WMI:
The Perubahan metode kelas Win32_Service membantu titik untuk solusi:
sumber
Saya menulis aplikasi .net sederhana untuk mengelola dependensi layanan, jika Anda tertarik. Gratis.
http://webpages.charter.net/bushman4/servicedependencymanager.html
sumber
Dalam C ++ (ATL) saya suka ini
sumber