J'ai un exécutable de service Windows que je sais être écrit en .NET et que je dois installer sous un nom de service différent pour éviter un conflit. L'installation ne permet pas de spécifier un nom de service. Si je n'ai accès qu'au binaire, existe-t-il un moyen de remplacer le nom du service lorsque je l'installe avec installutil ?
Réponses
Trop de publicités?Devez-vous utiliser InstallUtil ? Voici les commandes pour faire ce que vous voulez en utilisant sc :
sc create MyService binPath= "MyService.exe" DisplayName= "MyService"
sc description MyService "My description"
Référence : http://support.microsoft.com/kb/251192
Sachin Kainth
Points
7842
Volodymyr Bilyachat
Points
2019
-
Ajouter un installateur de projet à votre service
-
Ajouter une méthode pour obtenir le nom du CustomService
private void RetrieveServiceName() { var serviceName = Context.Parameters["servicename"]; if (!string.IsNullOrEmpty(serviceName)) { this.SomeService.ServiceName = serviceName; this.SomeService.DisplayName = serviceName; } }
-
appel sur l'installation et la désinstallation
public override void Install(System.Collections.IDictionary stateSaver) { RetrieveServiceName(); base.Install(stateSaver); } public override void Uninstall(System.Collections.IDictionary savedState) { RetrieveServiceName(); base.Uninstall(savedState); }
-
installutil /servicename=”My Service [SysTest]” d:\pathToMyService\Service.exe
user430017
Points
126
jsw
Points
895