L'application de bureau C # sur l'édition express a fonctionné puis n'a pas fonctionné 5 secondes plus tard.
J'ai essayé ce qui suit:
- Assurez-vous que la configuration de débogage, l'indicateur de débogage et les informations de débogage complètes sont définis sur tous les assemblys.
- Supprimez tous les dossiers bin et obj et toutes les DLL liées au projet de toute ma machine.
- Recréez les projets à l'origine du problème.
- Redémarrez.
J'ai deux projets WinForms dans la solution. L'un d'eux charge les informations de débogage, l'autre non. Ils font tous deux référence à l'assembly sur lequel j'essaye d'obtenir des informations de débogage exactement de la même manière dans le fichier de projet. Des idées?
Je veux ajouter ici, surtout pour moi-même lorsque je reviendrai sur cette question, que les symboles ne sont pas chargés tant que l'assemblage n'est pas chargé, et l'assemblage n'est pas chargé tant qu'il n'est pas nécessaire. Si le point d'arrêt se trouve dans une bibliothèque qui n'est utilisée que dans une fonction de votre assemblage principal, les symboles ne seront pas chargés (et il affichera le point d'arrêt comme n'étant pas atteint) jusqu'à ce que cette fonction soit appelée.
la source
<DebugSymbols>true</DebugSymbols>
dessous dans VS2015, je l'ai ajouté manuellement et cela a bien fonctionné.Réponses:
Commencez le débogage, dès que vous êtes arrivé à un point d'arrêt ou utilisé
Debug > Break All
, utilisezDebug > Windows > Modules
. Vous verrez une liste de tous les assemblys chargés dans le processus. Recherchez celui pour lequel vous souhaitez obtenir des informations de débogage. Cliquez dessus avec le bouton droit et sélectionnez Informations sur le chargement des symboles. Vous obtiendrez une boîte de dialogue qui répertorie tous les répertoires dans lesquels il a recherché le fichier .pdb pour l'assembly. Vérifiez cette liste par rapport à l'emplacement .pdb réel. Assurez-vous qu'il n'en trouve pas un ancien.Dans les projets normaux, l'assembly et son fichier .pdb doivent toujours avoir été copiés par l'IDE dans le même dossier que votre .exe. Le dossier bin \ Debug de votre projet. Assurez-vous d'en supprimer un du GAC si vous avez joué avec.
la source
Essayez d'abord de reconstruire votre projet en cliquant avec le bouton droit de la souris sur le projet> Reconstruire Si cela ne fonctionne pas, essayez un nettoyage du projet (clic droit de la souris sur le projet> nettoyer)
Si cela n'a pas fonctionné, vérifiez ceci:
(l'étape 6 génère les fichiers .pdb, ce sont les symboles de débogage)
la source
Properties > Build > Optimize code
n'était pas contrôlé .Juste quelque chose de simple à essayer - vous l'avez peut-être déjà essayé. Cliquez avec le bouton droit sur l'Explorateur de solutions dans la solution, cliquez sur "Nettoyer la solution", cela supprime tous les fichiers compilés et temporaires associés à une solution .
Effectuez une reconstruction de la solution et essayez à nouveau de déboguer.
J'ai également eu des problèmes avec plusieurs points d'arrêt dans une solution - certains compilés en x86, d'autres en x64.
la source
Désactivez l'option "Just My Code" dans les paramètres Debug / General.
la source
Cross poster ce correctif de Hans K que j'ai trouvé sur le fil similaire >> ICI << :
la source
La réponse choisie m'a amené à résoudre mon problème. Mais je dois faire encore quelques choses:
Même avec "Debug" sélectionné dans la liste déroulante:
Et dans le projet Propriétés> Construire:
Visual Studio ne chargeait pas de symboles dans un projet spécifique. Donc, dans cette liste déroulante, je sélectionne "Configuration Manager" et j'ai vu que les paramètres de mon projet Web étaient incorrects:
Ensuite, je l'ai défini sur "Debug" et il a commencé à générer le
.pdb
fichier. MAIS je dois copier manuellement la PDB et la DLL et mettre dans le dossier que VS recherchait (voici où la réponse sélectionnée m'a aidé):la source
release
mode. Merci !!Debug
>Windows
>Modules
Pour voir quels modules ont été chargés me mettre dans la bonne direction.Dans mon cas, IIS Express semblait charger une DLL différente à partir des fichiers ASP.NET temporaires.
La solution?
C:\Users\<YOUR USER>\AppData\Local\Temp\Temporary ASP.NET Files\vs
la source
J'ai pu corriger l'erreur en définissant simplement l'option dans l'option 'Attach to Process' sur 'Déterminer automatiquement le type de code à déboguer', comme indiqué dans la capture d'écran jointe.
Suivez simplement les étapes ci-dessous:
la source
Parfois, même si cela vous donne cette erreur, le
breakpoint
reste est touché, alors ignorez simplement l'erreur. Cela se produit assez souvent dansViews
unMVC web app
.la source
Vérifiez si votre fichier .pbd est manquant dans votre dossier bin / Debug. Si c'est le cas, allez dans "Propriétés" de votre projet, sélectionnez "Construire" puis "Avancé" en bas. Choisissez "complet" sous "Informations de débogage" dans la nouvelle fenêtre qui est apparue. C'était mon problème et je l'ai résolu pour moi.
la source
Dans mon cas, "Optimiser le code" a été coché dans les propriétés de mon projet. Cela a amené VS à voir mon assembly comme "pas mon code", et à son tour, il n'a pas chargé de symboles pour cela.
La solution était de décocher cela.
la source
Vérifiez simplement si votre solution est en mode Release.
la source
Essayez d'exécuter Visual Studio en tant qu'administrateur dans Windows.
la source
Dans mon cas, j'essaie de déboguer en mode relase. Une fois que je le change en mode débogage. Ça marche
la source
Vous devez activer "Générer des informations de débogage" dans les paramètres du compilateur
la source
->
Options de débogage->
Général->
Décochez la case "Enable Just My Code
"Cela a fonctionné pour moi.
la source
Nous avons trouvé la cause de notre problème. Ce code utilisait l'attribut "CodeBehind" dans la directive Page du fichier .aspx au lieu de l'attribut "CodeFile" (ASP.NET 2.0 et au-delà). Après des jours de désespoir, une simple recherche et remplacement a résolu le problème.
la source
L'option «Démarrer le débogage, Debug + Windows + Modules» n'existe pas dans l'édition de Microsoft Visual Studio Express 2013.
En décochant "Utiliser le mode de compatibilité géré" dans Outils Options, le débogage corrige ce problème.
la source
Vérifiez votre
Solution Configuration
liste déroulante. Assurez-vous que vous sélectionnezDebug
, nonRelease
.la source
J'ai essayé tout ce qui est mentionné ci-dessus, mais rien n'a fonctionné. [Nettoyer la solution et vérifier les fichiers PDB, etc.]
Même la publication de la même solution n'a pas résolu le problème.
Ensuite, je suis retourné à ce que je fais habituellement pour résoudre (tromper ce Visual Studio tenace)
Tout ce que j'ai fait, c'est d'apporter un changement délibéré de code et de publier la solution. Puis j'ai annulé le changement et publié à nouveau.
Voila [fichiers PDB débarrassés des mauvais esprits] .. Pas une résolution intelligente, mais cela a fonctionné ..: - |
la source
Webapplications (IIS Express) uniquement:
la source
Aucune de ces réponses n'a résolu mon problème. J'ai essayé une autre chose basée sur le fait que le projet avec l'arrêt n'était pas en réalité le projet chargé. J'ai trouvé que Hans Passant a écrit que le .dll où je veux arrêter le débogueur et les fichiers .pdb associés étaient copiés près du fichier .exe. Ces fichiers ont une date plus ancienne, donc je pensais qu'ils n'avaient pas été mis à jour lors de l'exécution. Je les ai supprimés manuellement, Visual Studio crée une autre paire ET place cette nouvelle paire près du .exe. Maintenant, les breakpoins fonctionnent!
Peut-être que Visual Studio ne peut pas copier et REMPLACER les fichiers existants (.dll et .pdb) près du .exe car il y en a un autre. Donc, si j'ai supprimé manuellement, VS pourrait en créer un nouveau près de .exe.
Je pense qu'un autre changement (vérifications et ainsi de suite - à partir des autres réponses) a déclenché quelque chose et Visual Studio a copié et remplacé les dll et pdb du dossier de projet dans le dossier près de l'exe, donc c'était une solution.
Je pense que la cause principale du problème est que Visual Studio utilise un autre fichier au moment de l'exécution, pas le fichier du projet, avec l'arrêt.
Peut-être cette réponse pour aider quelqu'un!
la source
Choses à vérifier juste pour être clair: assurez-vous que la configuration est définie sur «Debug» et non sur «Release». Vous pouvez déboguer le projet de démarrage en mode 'Release', mais pas une bibliothèque de classes référencée.
la source
Propriétés du projet (puis sélectionnez votre configuration de build)> onglet Build> Advanced ...> Debug Info (liste déroulante)
Réglez sur 'all' ou 'pdb-only' puis reconstruisez
la source
Au lieu de faire toutes ces choses juste
Fermer et rouvrir
la solution, il résoudra le problème
la source
J'ai eu un problème similaire et j'ai fait ce qui suit: Debug => Options => General => Supprimer la coche pour "Enable Just My Code" Cela a fonctionné pour moi ..
la source
Cela m'a pris un certain temps essayé d'autres options ci-dessus et pour une raison étrange, le débogage a cessé de fonctionner.
la source
la source
Vérifiez que les deux paramètres suivants sont identiques dans Visual Studio:
Cliquez avec le bouton droit sur le projet de test, accédez à Propriétés, onglet Générer et regardez la cible de la plate-forme
Les miens sont tous réglés sur "Any CPU" donc x64
Dans la barre du menu principal, accédez à Test, Paramètres de test, Architecture de processeur par défaut
Le mien était réglé sur X86
La modification de ce paramètre en X64 pour correspondre au paramètre ci-dessus a fait fonctionner le menu intégré de Visual Studio «Test (s) de débogage» et a atteint les points d'arrêt qui étaient précédemment ignorés avec le message «Le point d'arrêt ne sera pas actuellement atteint. Aucun symbole n'a été chargé pour ce document ».
Mise à jour:
Pour Visual Studio 2019, les menus ont été déplacés un peu:
la source
Je sais que j'ai des années de retard, mais je pensais avoir fait quelque chose de mal et avoir suivi les étapes ci-dessus, puis j'ai réalisé que j'avais réglé la configuration de la solution sur 'Release' par erreur :)
la source