Comment configurer le débogage distant sur une machine sans Visual Studio

Est-il possible de configurer le débogage à distance (Msvscom.exe) sur une machine sur laquelle Visual Studio n’est pas installé?

Je voudrais attacher au service en cours d’exécution sur la VM afin que je puisse déboguer un problème dans le code. Je l’ai déjà fait mais les deux machines ont été installées.

La boîte de développement exécute Visual Studio 2010 / Widnows 7. La machine virtuelle exécute Windows 7 sans Visual Studio.

Je vais ressusciter cela parce que quiconque a essayé de le faire sait que c’est une douleur totale à chaque fois, et que cela change légèrement avec chaque combinaison possible de système hôte / distant que vous pouvez avoir.

Liens Visual Studio Remote Tools:

  1. Débogueur distant Visual Studio 2010. (Travailler à partir du 21 / oct / 2016)
  2. Outils distants Visual Studio 2013 (à partir du 21 / oct / 2016)
  3. Outils distants Visual Studio 2015 x86 – Lien de téléchargement direct
  4. Outils distants Visual Studio 2015 x64 – Lien de téléchargement direct
  5. Visual Studio Tools (Merci Robo Burned)

C’est la configuration avec laquelle j’ai réussi aujourd’hui:

Machine hôte (dev):
Windows 7 Ultimate SP1 x64. Exécution de Visual Studio 2010, .NET Framework 4.

Machine à distance:
PC indussortingel / indussortingel fonctionnant sous Windows Embedded Standard 32 bits. Il ressemble / se sent exactement comme Windows 7. En cours d’exécution SP1. Visual Studio n’est pas installé. A le framework .NET 4.

Réseau:
Les deux machines sont sur le même sous-réseau. J’accède à la machine distante via RDP et lance mon application de cette manière.

Implémentation Microsoft de désortingticulation des follicules:
Notez le nom d’utilisateur et le mot de passe de votre machine de développement. Pour une raison quelconque, vous devez créer exactement le même nom d’utilisateur et mot de passe sur la machine distante. Parce que Microsoft.

Comment je l’ai fait:
J’ai téléchargé le débogueur distant Visual Studio 2010 à partir du lien fourni par @sJhonny. J’ai dû éteindre Visual Studio 2013 dans cet article et jusqu’en 2010. Si vous souhaitez revoir l’article 2010 avec un peigne fin pour trouver le téléchargement, le lien est juste à côté du “Personne ne le trouve jamais utile “lien en haut. Sinon, suivez simplement mon lien ci-dessus.

Installez-le sur la machine distante et lancez l’assistant de configuration. J’ai laissé les valeurs par défaut pour l’assistant:

  • “Exécuter le Visual Studio …..” a été coché
  • Le nom d’utilisateur est LocalSystem et le mot de passe est vide
  • Autoriser uniquement les ordinateurs du réseau local ….

Exécutez le débogueur distant sur le système distant et vous verrez

Msvsmon a lancé un nouveau serveur nommé ‘username @ machinename …’

dans l’interface. Jusqu’ici tout va bien. Exécutez l’application sur la machine distante. Sur la machine de développement, Ctrl + Alt + P dans Visual Studio ouvrira “Attacher au processus” (il se trouve également sous le menu Outils). J’ai reçu une fenêtre contextuelle sur le pare-feu de ma machine de développement qui n’était pas configurée correctement et on m’a demandé si je voulais autoriser les connexions, etc.

Entrez la combinaison ‘nom d’utilisateur @ nom_machine’ dans la case de qualification … appuyez sur Rafraîchir et priez un peu. Priez un peu plus fort et vous devriez voir une liste des processus exécutés sur la machine distante. Sélectionnez votre processus et attachez-le.

Mais mes points d’arrêt ne fonctionnent pas !? Bien sûr, ils ne le font pas … car utiliser les points d’arrêt dans le même répertoire que l’application sur la machine distante aurait trop de sens. Si vous aviez la chance, vous avez été averti à propos d’un cache de point d’arrêt et vous avez eu un dialog avec un chemin.

La boîte de dialog mentionne quelque chose comme étant correct par rapport à la machine distante. C’est mentir Cela n’a rien à voir avec la machine distante, sauf qu’elle vous oblige à créer un nouvel utilisateur portant le même nom que votre utilisateur actuel, car Microsoft. Pour que vos points d’arrêt fonctionnent, suivez le chemin sur votre machine de développement (personnalisable dans Outils> Options> Débogage> Symboles: symboles de cache dans ce répertoire) et copiez les fichiers .pdb de votre application dans ce répertoire. Vous devez les copier avec chaque nouvelle version, sauf s’il existe une option pour le faire automatiquement; Je n’ai pas vérifié car je n’ai pas encore arrêté de célébrer le succès de mon débogage à distance.

Tout devrait fonctionner maintenant.

J’espère que cela aidera quelqu’un à économiser les heures de rage aveuglante que j’ai endurées en essayant de faire fonctionner cette machine sur différentes machines au fil des ans.

certainement il y en a.
Vous pouvez installer msvsmon sans installer Visual Studio.
Je l’ai fait moi-même sur plusieurs machines.
la partie délicate réside dans l’autorisation – l’utilisateur exécutant VS sur votre machine locale a besoin de privilèges spéciaux sur la machine distante.
ms a quelques articles expliquant les détails – http://msdn.microsoft.com/en-us/library/bt727f1t.aspx ,

Mise à jour: Voici les liens pour 2017 qui ne sont pas évidents à trouver non plus.

Liens vers Visual Studio Remote Tools Lien direct x64

Visual Studio Remote Tools Liens Lien direct x86

Tiré de: Comment-implémenter-le-débogage-distant-dans-studio-visuel-2005

Considérons un exemple pour comprendre clairement cette situation. Molly Clark et Adam Barr sont tous deux employés chez Adventure Works. Adventure Works dispose d’un domaine Microsoft Windows NT nommé adventure-works.com. Adam a des problèmes avec certains logiciels écrits par Molly. Molly aimerait déboguer ce logiciel sur l’ordinateur d’Adam. Molly et Adam suivent ces étapes:

  • Adam n’a pas le débogueur distant sur son ordinateur. Pour configurer le débogueur distant, Molly décide de partager le répertoire Program Files \ Microsoft Visual Studio 8 \ Common7 \ IDE \ Remote Debugger sur son ordinateur. Elle crée un partage de fichiers appelé Remote.
  • Adam exécute \ MollyComputerName \ Remote \ x86 \ Msvsmon.exe.
  • Une fois le débogueur distant démarré, Adam clique sur Autorisations dans le menu Outils pour configurer le débogueur distant à l’aide de la boîte de dialog Autorisations. Il donne à Molly la permission de déboguer.
    Remarque Adam peut également configurer le débogueur distant en transmettant l’option / allow au démarrage du débogueur distant.
  • Molly démarre Visual Studio 2005.
  • Pour ouvrir la boîte de dialog Attacher au processus, Molly clique sur Joindre au processus dans le menu Outils.
  • Molly se connecte à l’ordinateur d’Adam en entrant adventure-works.com \ Adam @ AdamComputerName dans la case Qualifier.
  • Sous Processus disponibles, Molly sélectionne le processus de travail utilisé par son application, puis clique sur Joindre.
  • Molly ouvre un navigateur et fournit l’URL de l’application distante. L’exécution s’arrête là où le point d’arrêt est placé dans l’application.