J'essaie de joindre un service Windows à l'aide de Visual Studio 2010 → Déboguer → Attacher au processus commande Lorsque je fais défiler la liste des processus, mon service Windows est grisé et le bouton d’attachement est également grisé.
J'ai essayé de changer le compte de service en service local, mon compte, etc., mais il reste grisé. Y at-il un moyen de résoudre ce problème?
J'ai généralement le même problème et je m'en occupe en ajoutant un booléen à ma configuration qui déclenche un lancement du débogage. Vous pouvez lancer une instance de débogueur Visual Studio qui se connecte à votre processus de service Windows en appelant ceci:
System.Diagnostics.Debugger.Launch();
Ce qui est bien, c'est que vous pouvez l'appeler n'importe où dans votre code.
Dans Visual Studio 2010, dans la boîte de dialogue Attacher au processus, cochez les deux cases situées en bas et indiquant "Afficher les processus de tous les utilisateurs}" et "Afficher les processus dans toutes les sessions} '.
Ce faisant, j'ai constaté que mon processus était affiché deux fois, l'un fonctionnant sous le nom System et l'autre s'exécutant sous mon identifiant Windows local. Je ne suis pas sûr de savoir pourquoi (n'importe quelle entrée sur ce serait génial!), Mais j'ai réussi à me connecter à celle non grisée qui s'est présentée et j'ai aussi été capable de parcourir mon code de cette façon.
Le second était le processus nom_service.vshost.exe, comme l'a souligné Ozz dans les commentaires.
Si vous ne le voyez toujours pas, assurez-vous que votre service est toujours en cours d'exécution. Parfois, vous pouvez avoir un service défaillant qui a démarré et qui s'est automatiquement arrêté et qui n'apparaît donc pas dans les options d'attachement.
Non seulement je devais cocher les cases show processes from all users
et show processes in all sessions
; Je devais également cliquer sur le bouton Select
puis choisir le code Managed
.
После установки службы Windows dans le menu déroulant Затем в Visual Studio a mis à jour des mots Détails du produit (Alt+Ctrl+P), найдите свой процесс, выберите его и нажмите кнопка присоединения в нижней частая.
Assurez-vous que vous exécutez Visual Studio en tant qu'administrateur. Des droits d’administrateur seront nécessaires pour pouvoir s’attacher à un service en cours d’exécution.
J'ai résolu mon problème en modifiant la façon dont la configuration a été générée, de RELEASE à DEBUG. Et puis, j'ai installé le service et attaché comme d'habitude.
Vous n'êtes peut-être pas autorisé à attacher au service. Avez-vous des privilèges d'administrateur sur le bureau? De nombreuses entreprises ne le permettent pas par défaut, supposément pour aider à sécuriser leur environnement.