web-dev-qa-db-fra.com

Attacher le débogueur Visual Studio au service Windows - "attacher" en grisé

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?

37
Kevin McPhail

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.

59
jlafay

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.

38
PreethaA

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.

enter image description here

7
Flea

После установки службы Windows dans le menu déroulant Затем в Visual Studio a mis à jour des mots Détails du produit (Alt+Ctrl+P), найдите свой процесс, выберите его и нажмите кнопка присоединения в нижней частая.

2
ghhp

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.

2
Reed Copsey

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.

0
alansiqueira27

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.

0
Steve Townsend