Même si je crée un projet WinForms propre, Edit and Continue ne fonctionne pas et me donne l'erreur:
Les modifications ne sont pas autorisées lorsque le débogueur a été attaché à un processus déjà en cours d'exécution ou lorsque le code en cours de débogage a été optimisé au moment de la génération ou de l'exécution.
- L'option Modifier et continuer est cochée dans Outils → Options → Débogage.
- L'optimisation n'est pas activée.
- On dirait qu'aucun profileur géré n'a été configuré.
- Je cours en mode débogage
- J'utilise un processeur x64 et Windows XP 32 bits, mais définir la cible de la plate-forme sur x86 plutôt que sur AnyCpu n'aide pas.
- La réparation de l'installation de Visual Studio n'aide pas.
J'ai également trouvé cet article sur le site Web MSDN:
Scénarios non pris en charge
Modifier et continuer n'est pas disponible dans les scénarios de débogage suivants:
Débogage sous Windows 98.
Débogage en mode mixte (natif / géré).
Débogage SQL.
Débogage d'un vidage Dr. Watson.
Modification du code après une exception non gérée, lorsque l'option «Dérouler la pile d'appels sur les exceptions non gérées» n'est pas sélectionnée.
Débogage d'une application d'exécution intégrée.
Débogage d'une application avec Attacher à plutôt que d'exécuter l'application avec Démarrer dans le menu Déboguer.
Débogage du code optimisé.
Débogage du code managé lorsque la cible est une application 64 bits. Si vous souhaitez utiliser Modifier et continuer, vous devez définir la cible sur x86. (Propriétés du projet, onglet Compiler, paramètre avancé du compilateur.).
Débogage d'une ancienne version de votre code après l'échec de la construction d'une nouvelle version en raison d'erreurs de construction.
Mais je peux répondre «Non» à chaque élément de cette liste.
Cela fonctionnait avant, mais il y a quelques jours, cela a cessé de fonctionner, et je ne sais pas quelle pourrait en être la raison.
Réponses:
J'ai enfin réussi à résoudre le problème: DÉSINSTALLER Gallio
Gallio semble avoir de nombreux aspects difficiles et il est préférable de ne pas utiliser MbUnit 3.0 mais d'utiliser le framework MbUnit 2.0 mais d'utiliser le gallio runner, que vous exécutez sans installer à partir du programme d'installation (qui a également installé un plugin visual studio).
D'ailleurs, j'ai eu le problème même après avoir "désactivé" le plugin Gallio. Seule la désinstallation a résolu le problème.
PS. Edité par nightcoder:
Dans mon cas, la désactivation de TypeMock Isolator (framework moqueur) a finalement aidé ! Edit & Continue fonctionne maintenant !!!
Voici la réponse du support TypeMock:
la source
Autres solutions applicables
Vous trouverez ci-dessous une liste incomplète et non ordonnée de solutions possibles à essayer si vous * essayez de corriger rapidement Modifier et continuer.
Assurez-vous que la variable système
COR_ENABLE_PROFILING
n'est pas définie sur1
. Certains profileurs le définissent lors de l'installation et le laissent comme ça après la désinstallation. Ouvrez une invite de commande et tapezset
pour vérifier rapidement que votre système est affecté, si c'est le cas, supprimez la variable ou définissez-la sur0
:COR_ENABLE_PROFILING
Soyez conscient des scénarios non pris en charge (comme indiqué dans la question) et des modifications non prises en charge .
* par «vous», j'entends le visiteur de la page qui se martèle la tête sur un clavier pour trouver la solution.
N'hésitez pas à modifier cette réponse pour ajouter votre solution de contournement si elle n'est pas répertoriée ici!
la source
Si vous déboguez une application ASP.NET, accédez à propriétés> web> serveurs et assurez-vous que «activer et continuer» est coché sous utiliser Visual Studio Development Server.
la source
J'ai eu le même problème. J'ai même réinstallé VS 2008 mais le problème n'a pas disparu. Cependant, lorsque j'ai supprimé tous les points d'arrêt, cela a commencé à fonctionner.
Je pense que cela se produisait parce que j'avais supprimé une page aspx qui avait des points d'arrêt dans son code, puis j'ai créé une autre page avec le même nom. Cela a probablement confondu le VS 2008.
la source
Quelques points à vérifier
ÉDITER
Je ne pense pas que cela devrait avoir une importance, mais assurez-vous que le processus d'hébergement est activé pour la plate-forme cible. Ça n'aidera probablement pas.
S'il reprend pour de nouveaux projets, cela pourrait être quelque chose d'encore plus subtil. J'essaierais ce qui suit.
la source
Aucune des solutions ci-dessus n'a fonctionné pour moi (fonctionnant sur une machine 64x).
Enfin, j'ai cliqué sur
'advanced compiler settings'
et UNCHECKED'enable optimizations
'et je peux maintenant parcourir le code et le modifier pendant le débogage.la source
"Modifier et continuer", lorsqu'il est activé, ne vous permettra d'éditer le code que lorsqu'il est en mode pause: par exemple en mettant l'exécution en pause par une exception ou en frappant un point d'arrêt.
Cela implique que vous ne pouvez pas éditer le code lorsque l'exécution n'est pas interrompue! Lorsqu'il s'agit de déboguer des projets Web (ASP.NET), cela est très peu intuitif, car vous voudrez souvent apporter des modifications entre les demandes. Pour le moment, le code de votre débogage (probablement) n'est pas en cours d'exécution, mais il n'est pas non plus suspendu!
Pour résoudre ce problème, vous pouvez cliquer sur «Tout casser» (ou appuyer sur Ctrl+ Alt+ Break). Vous pouvez également définir un point d'arrêt quelque part (par exemple dans votre
Page_Load
événement), puis recharger la page pour que l'exécution s'arrête lorsqu'elle atteint le point d'arrêt, et maintenant vous pouvez éditer le code. Même code dans les.cs
fichiers.la source
Pour moi, pour une raison que je ne comprends pas, le paramètre "Générer les informations de débogage" dans les "Paramètres avancés du compilateur" a été défini sur "pdb uniquement" au lieu de "Complet".
Par défaut, ce paramètre est toujours réglé sur "Full" mais un mystérieux poltergeist a changé ce paramètre la nuit dernière. :)
PS Je suis dans Visual Basic .Net avec Visual Studio 2010
la source
Si votre problème concerne une application ASP.NET, assurez-vous que la modification et la poursuite sont activées dans l'onglet Web (vs2010). Il existait également un paramètre distinct pour le débogage ASP.NET dans les versions antérieures.
Cordialement,
Adam.
la source
J'ai trouvé que même si sous l'onglet de construction et de débogage des propriétés du projet sont définis sur Déboguer et que tous les autres paramètres sont corrects, je reçois toujours le message, mais après avoir creusé un peu plus dans le menu Construction, sélectionnez Gestionnaire de configurations ... et assurez-vous que Déboguer est sélectionné à deux endroits là aussi. allez comprendre ... de combien d'endroits différents ont-ils besoin pour définir le débogage ?????? même si vous définissez Projet - Configuration sur Déboguer, sous Build - Manager, il n'est pas modifié, vous avez donc également modifié le même paramètre Configuration du projet - cela semble à nouveau être un problème Microsoft .......
la source
Ce problème est dû au paramètre Intellitrace
Si Intellitrace est activé, assurez-vous que l'événement Intellitrace seul est coché
Sinon, cela ne permettra pas de modifier et de continuer.
Si vous cliquez sur les options Intellitrace, vous verrez les avertissements.
la source
La prise de vue suivante m'a aidé à utiliser VS2010:
allez dans Outils, Options, Débogage, Général et assurez-vous que "Exiger que les fichiers source correspondent exactement à la version d'origine" est décoché.
la source
Cela se produit lorsque le débogueur n'a pas atteint un point d'arrêt ou que vous n'avez pas appuyé sur Break All (pause). Ça ne pouvait pas être aussi simple que ça?
la source
L'erreur indique qu'une cause possible est: "le code en cours de débogage a été optimisé au moment de la construction ou de l'exécution". Allez dans Propriétés du projet -> Déboguer et décochez la case Optimiser le code pour le mode Débogage.
la source
J'ai eu ce problème dans Microsoft Visual Studio 2008 et la solution est simple. lorsque vous exécutez votre projet, veuillez définir le mode "Débogage" et non "Libérer". La solution d'un autre peuple peut être utile.
la source
Si je crée un nouveau projet, les modifications lors du débogage ne fonctionnent pas. Si je crée un nouveau site Web, les modifications lors du débogage fonctionnent comme prévu.
la source
Dans mon cas, il suffit de réinitialiser les paramètres du débogueur par défaut et de définir IntelliTrace-> seuls les événements intellytrace aident
la source
Certaines choses qui semblent aider à utiliser VS2010:
la source
J'ai supprimé un ensemble de données de mon projet car je ne l'ai pas utilisé. Après cela, j'ai pu modifier le programme lors du débogage.
la source
J'ai fait tous les changements mentionnés dans chaque autre réponse et aucun n'a fonctionné. Qu'est-ce que j'ai appris? Activer et Continuer existe à la fois dans le menu Outils> Options> Débogage et également dans les paramètres du projet. Après avoir vérifié les deux, Activer et Continuer a fonctionné pour moi.
la source
Je suis tombé sur ceci aujourd'hui - il s'avère que le fait d'avoir des informations de débogage définies sur pdb uniquement (ou aucun, j'imagine) empêchera Edit and Continue de fonctionner.
Assurez-vous d'abord que vos informations de débogage sont définies sur «complet»!
Propriétés du projet> Générer> Avancé> Sortie> Informations de débogage
la source
Cela semble illogique, mais le seul moyen était de désactiver l'édition et de continuer à partir des options de VS 2017 ... Ensuite, l'édition et la poursuite d'AspNet ont commencé à fonctionner ...
la source
ce qui a fonctionné pour moi a été de décocher "Utiliser le mode de compatibilité gérée" sous
TBN: cocher ou décocher "Exiger que le fichier source corresponde exactement à la version originale" ne semble pas influencer l'E&C
J'espère que cela peut vous aider.
la source
Activez la modification et continuez uniquement pour exécuter IIS Express. Ne fonctionne pas dans l'ISS local ou l'hôte externe.
la source
J'ai eu ce problème ennuyeux depuis que j'ai mis à niveau mon VS 2019 vers 16.4.3 et m'a causé beaucoup de maux de tête.
Enfin, j'ai résolu le problème de cette façon:
1. Arrêtez le débogage
2. Sélectionnez la solution dans "Explorateur de solutions"
3. Dans la fenêtre Propriétés , modifiez la propriété "Configuration active" de "Release | Any CPU" à "Debug | Any CPU"
4 Dans Débogage> Options> Général Cochez la case Modifier et continuer
Cela a fonctionné pour moi, et j'espère que cela fonctionnera pour vous aussi.
la source
embed interop types visual studio doit être défini sur false
la source
J'ai eu cela se produire dans un fichier de classe lié. Le reste du projet a permis E&C, mais j'ai eu la même erreur lors de l'édition du fichier lié. La solution consistait à diviser le fichier lié en son propre projet et à référencer le projet.
la source
J'ai fait face au même problème. Mon problème était que je pouvais modifier un fichier, mais pas un autre (les deux sont dans le même projet). Plus tard, j'ai découvert que le fichier que je ne pouvais pas modifier faisait également partie d'un autre projet. Qu'un autre projet (Test unitaire) n'a pas été chargé et que le débogueur VS intelligent affiche l'erreur selon laquelle l'assembly pour ce fichier donné n'a pas été chargé et les modifications ne sont pas autorisées. Comme c'est bizarre!
Par conséquent, j'ai dû décharger le projet de test unitaire et continuer le débogage EnC.
la source
J'avais un projet de base de données dans la solution qui a empêché la modification du projet Webforms.
J'ai cliqué sur "Décharger" sur le projet de base de données et tout fonctionne maintenant correctement.
la source
Pour VS2017, cela peut aider à supprimer le fichier .suo dans votre solution, cela a fonctionné pour moi. :)
la source