Je suis en train d'accéder à un service Windows (également créé par moi) à travers une application WinForms utilisant ServiceController:.net ServiceController - Impossible d'ouvrir le service "nom de service" dans la machine '.'
service = new System.ServiceProcess.ServiceController("MyService")
Le service retourne OK et je peux voir l'état via myservice.Status
.
Mais quand je tente de démarrer (ou arrêter), il renvoie l'erreur:
Unable to open service MyService in machine '.'
Je suis administrateur et le processus de service est en cours d'exécution en tant que NetworkService.
Je suis nouveau dans les applications .net et windows et je n'arrive pas à le déboguer davantage.
Je pense que j'utilise le bon, c'est "MySMS Service". Les erreurs ServiceName in Service ("MySMS_Service") sur service.Status donc j'ai pensé "MySMS Service" était correct parce que le statut "Stopped" est retourné. Oui, mon compte d'utilisateur a des droits d'administrateur. Oui, le service est en cours d'exécution sur la machine locale, je n'ai pas défini la propriété MachineName, donc elle doit être définie par défaut sur la machine locale. –
J'ai mis à jour la réponse. Je crois que vous devez utiliser le nom du service, pas le nom d'affichage. –
ok, pour être sûr que j'ai utilisé ServiceController.GetServices() et passé par tous les services - le serviceName est en effet "MySMS Service". - Je peux Statut et obtenir DisplayName, etc de celui-ci - mais seulement quand j'essaie de démarrer ou d'arrêter, il retourne "Impossible d'ouvrir le service MySMS Service dans la machine". '. " –