J'essaie actuellement d'installer plusieurs services en utilisant ManagedInstallerClass.InstallHelper.Utilisation de ManagedInstallerClass.InstallHelper pour installer plusieurs services
L'exécution du code se passe sans problème lorsque j'installe le premier service, puis une erreur indique qu'un service portant le même nom existe déjà. Cependant, si je quitte le programme puis exécute le même processus à partir du second service, tout se passe bien.
La fonction que j'utilise est celle-ci.
ManagedInstallerClass.InstallHelper(arguments.ToArray());
Je suis sûr à 100% que les arguments sont corrects.
L'exception que j'ai est celle-ci:
System.InvalidOperationException: "The installation failed, and the rollback has been performed."
Inner Exception: "The specified service already exists"
Mon sentiment profond est que le ManagedInstallerClass conserve quelque chose dans son ventre et donc lors de l'exécution du second appel dans le même processus quelque chose va mal.
Quelqu'un a une idée de ce qui se passe et pourquoi?
Comment savez-vous que les args sont corrects? C'est une méthode à ne pas utiliser, elle ne décrit pas le format requis du tableau de chaînes. En outre, il n'installe pas de services, il nécessite des noms d'assembly, des assemblys disposant d'un programme d'installation. –
Les args sont bien en effet. Comme je l'ai dit, le premier appel se passe bien - le second casse avec l'exception que j'ai énumérée. Si je redémarre le programme et exécute juste le deuxième appel, l'appel va bien aussi - et ainsi de suite avec troisième, quatrième, etc. – sh0uzama