2010-02-18 3 views
1

Certains services ne peuvent pas démarrer ou s'arrêter avec Service Management Console. ex) DcomLaunch, SamSsComment refuser l'accès à un service?

Le bouton d'arrêt de ces services est désactivé sur Service Management Console. Donc, nous ne pouvons pas arrêter les services. (Même si nous avons un administrateur compte)

Est-il possible? Comment puis-je faire cela?

Merci d'avance.

Répondre

2

Votre service appelle finalement SetServiceStatus pour spécifier son statut. Une partie de ceci est ce que les contrôles accepte. Si vous ne spécifiez pas SERVICE_ACCEPT_STOP, le service ne peut pas être arrêté. Pour le code managé, vous pouvez définir la propriété CanStop sur ServiceBase.

Une autre possibilité qui permet un contrôle un peu plus précis est de modifier l'ACL de votre service. MSDN a un exemple d'article here. Cette option est généralement utilisée si vous souhaitez autoriser les utilisateurs non administrateurs à contrôler le moment où votre service est en cours d'exécution.

S'il vous plaît pensez très soigneusement si votre service ne devrait pas être arrêté - les utilisateurs devraient être en contrôle de leur machine et autorisés à arrêter les services à volonté.

+0

Merci beaucoup! – Benjamin

Questions connexes