J'ai un fichier de commandes que j'ai utilisé pour installer mes services Windows C # pour un moment, n'a jamais eu de problème tant que Windows 7. J'ai tenté d'exécuter le fichier de commandes avec des privilèges d'administrateur. J'ai essayé d'exécuter l'invite de commande avec Admin Prishs, accédez à l'EXE du service Windows et exécutez-la. Toujours ne fonctionne pas.
Après avoir lu d'autres suggestions, j'ai essayé de déplacer mes fichiers hors du dossier / bin et de les exécuter d'un autre endroit, mais cela n'a pas non plus fonctionné. P>
Le fichier de lot semble Comme ceci p> et j'ai un fichier journal d'installation que je viderai des informations à. Si je viens de doubler cliquez sur le fichier .bat, je reçois p> Exécution d'une installation transaction. P>
Commencer la phase d'installation de la
installation. Voir le contenu de la
Fichier journal pour le
C: \ Utilisateurs \ Justin \ Desktop \ Service
Test \ ippams_winservice1.exe
progrès de l'Assemblée. Le fichier est
situé à
C: \ Utilisateurs \ Justin \ Desktop \ Service
Test \ ippams_winservice1.installlog. p>
Une exception s'est produite lors de la
Phase d'installation.
Système.InvalidoperationException:
Impossible d'ouvrir le gestionnaire de contrôle de service sur
l'ordinateur '.'. Cette opération pourrait
besoin d'autres privilèges. L'intérieur
exception
System.componentModel.win32Exception
a été lancé avec l'erreur suivante
Message: L'accès est refusé. P>
la phase de restauration de l'installation
commence. Voir le contenu de la
Fichier journal pour le
C: \ Utilisateurs \ Justin \ Desktop \ Service
Test \ ippams_winservice1.exe
progrès de l'Assemblée. Le fichier est
situé à
C: \ Utilisateurs \ Justin \ Desktop \ Service
test \ IEPPAMS_WinService1.InstallLog. p>
La phase Rollback terminée
avec succès. p>
Le install a terminé Formalités. P>
Blockquote> Quand je lance le fichier .bat avec des privilèges d'administrateur rien qui est écrit dans le fichier journal, et le service est toujours pas installé. P> Toutes les pensées? Y at-il une nouvelle façon d'installer des services dans Windows 7? P> p>
3 Réponses :
Cliquez avec le bouton droit de la souris sur le fichier de commandes et exécutez-le en tant qu'administrateur. P>
Vous êtes probablement en train de courir dans la bataille avec le nouveau modèle de sécurité (contrôle de compte d'utilisateur) de Windows Vista et Windows 7. Même si vous utilisez un compte qui dispose de droits d'administrateur, vous aurez toujours besoin d'élever. ) activités administratives. (Oui, il est possible de désactiver cette fonctionnalité, mais ne) p>
UAC (MSDN) p> li>
UAC (Wikipedia) P> Li>
installutil (MSDN) P> < / li> ul>
installutil yourapp.exe code>. Le
/ i code> ne semble pas être un commutateur VAILD pour
installutil code>. P>
Matthew, merci mais j'ai essayé ça. Les résultats sont décrits à la fin de ma question.
@Justin, essayez de lancer la fenêtre de commande comme administrateur, puis essayez de délivrer la commande manuellement. Il semble que ce soit une question d'autorisations mais sans assister à votre machine, il est difficile de deviner quelle autorisation cause le problème.
BTW, avez-vous essayé de regarder dans ce fichier journal?
Ouais, donc comme je l'ai décrit, j'ai essayé de faire un clic droit sur le fichier de commandes et d'exécuter en tant qu'administrateur et j'ai également essayé d'exécuter l'invite de commande en tant qu'administrateur et n'a ni travaillé. Rien n'est écrit dans le fichier journal lorsque j'utilise les paramètres de l'administrateur, mais le service n'est pas installé. Lorsque je n'utilise pas les paramètres de l'administrateur, le fichier journal contient les informations que j'ai collé ci-dessus.
Tout ce que j'ai laissé à suggérer serait de regarder dans votre code d'installation et de vous assurer qu'il n'essaie pas de faire quelque chose de fou. Avez-vous une clé de nom forte sur le projet?
Oui, c'est un nom unique. Ce code exact n'installe aucun problème sur Windows XP et Windows Server 2003. Cela me donne envie d'accepter qu'il s'agit d'un problème d'autorisations, mais rien que je ne travaille. J'ai lu une carte de message qui a parlé de problèmes avec l'installation d'installation 64 bits lorsque le 32 bit devrait être en cours d'exécution. Je suis sur une machine 32 bits afin que cela puisse avoir quelque chose à voir avec ça.
Vous ne devriez pas avoir à vous soucier de cela à moins que vous ne soyez sur une machine X64. Si vous êtes sur X86, vous ne devriez même pas avoir la structure 64 bits installée. Êtes-vous chez vous, Pro, Ultimate? Cela ne devrait pas être un problème mais qui sait.
@Justin, que se passe-t-il si vous supprimez le / i code>?
Le / i code> peut-être un raccourci vers
/ INSTALLSTATAIR CODE> et il est probablement confus à la recherche d'un répertoire nommé
ieppams_winservice1.exe code>. À l'avenir, il existe un
/ showcallstack code> qui pourrait aider à trouver le problème du problème est vraiment en cours.
Merci Matthew, toutes les grandes idées. J'ai fini par trouver une solution qui a fonctionné. Je ne comprends toujours pas à 100% pourquoi, mais ce dernier commentaire de la vôtre met de la lumière dessus. J'ai posté la réponse moi-même.
Lorsque j'exécute le fichier .bat avec les privilèges d'administrateur, rien n'est écrit dans le fichier journal, et le service n'est toujours pas installé. EM> P>
Tout d'abord, vous devez exécuter en tant que autorisations d'administrateur. P>
Deuxièmement, lorsque vous "exécuter en tant qu'administrateur", cela modifie réellement le répertoire sur C: Windows \ System32 en tant que répertoire initial (aucune idée de la raison), ce qui expliquerait probablement pourquoi fonctionner comme l'administrateur ne provoque aucun fichier journal. Changer manuellement sur le chemin Ieppams_winservice1.exe réside dans le début de votre script. P>
Donc, j'ai pu résoudre le problème en tapant dans la ligne de commande tout le chemin d'accès à l'installation et au fonctionnement. Donc, après la navigation dans le dossier qui avait mon exe, j'ai saisi ce qui suit: P>
c: \ windows \ microsoft.net \ framework \ v4.0.21006 \ installuttil.exe Ieppams_winservice1.exe p> blockQuote>
Je ne sais pas pourquoi je dois le faire sous Windows 7 maintenant, lorsque je n'ai jamais eu à XP, mais bien. Merci pour toutes les suggestions! P>
Je cherche à faire la même chose que vous faites ici. Je viens de remarquer que pour votre "solution" ici, vous utilisez l'installation de l'installationTil.exe dans votre répertoire .NET 4.0. Dans votre question initiale, vous utilisiez .NET 2.0 à installer. (SET DOTNETFX2 =% Systemroot% \ Microsoft.net \ Framework \ v2.0.50727)
Excellent point. Je me sens comme quand je traversais des choses que j'ai essayé d'aller à .net 4.0 et cela n'a pas fait l'affaire. Ensuite, quand je suis allé au chemin complet, il fonctionnait. Je ne suis pas revenu pour essayer le chemin complet de 2.0 et c'était il y a quelques mois, alors je me souviens peut-être de tort.
@Billbingham content que cela ait aidé, j'ai perdu au moins une journée sur cette
Calcul de la durée sauvegardée ... 0.8 jours
@Justinc, j'ai le même problème. J'ai essayé tout ce que j'ai vu sur tous les forums ainsi que de donner le chemin complet. Aucune suggestion?
@CSHARPDEV - Désolé, le truc complet de chemin a fonctionné pour moi lorsqu'il est combiné avec la gestion des droits de l'administrateur. Assurez-vous que vous avez le numéro de version installé sur lequel vous vous référez dans votre chemin complet. Dans mon cas, c'était v4.0.21006 mais le vôtre peut être différent
Bonjour, j'ai le même problème que j'exécute cette commonde: c: \ windows \ microsoft.net \ framework \ v4.0.30319 \ installuttil.ex EXE: \ dataService \ dataservice.exe code> ça marche bien.