Maison  >  Article  >  outils de développement  >  Que dois-je faire si vs2010 indique que le projet a expiré ?

Que dois-je faire si vs2010 indique que le projet a expiré ?

藏色散人
藏色散人original
2020-04-20 09:00:1016434parcourir

Que dois-je faire si vs2010 indique que le projet a expiré ?

Que dois-je faire si vs2010 indique que le projet a expiré ?

Solution qui indique toujours que ce projet a expiré au démarrage du débogage

Tutoriel recommandé : Tutoriel vscode

Que dois-je faire si vs2010 indique que le projet a expiré ?

Tout d'abord, si la compilation échoue dans Visual Studio, alors cette invite est normale.

Parce que ce projet a expiré, cela signifie que vous avez modifié certains fichiers ou configurations de projet ou que vous n'avez pas compilé avec succès la dernière fois. Vous devez recompiler, sinon des erreurs de débogage se produiront.

Si votre dernière compilation a réussi et que cette invite apparaît toujours lorsque vous appuyez sur F5 pour déboguer, il peut y avoir un problème.

Si ce problème se produit à chaque fois, alors cette solution est faite pour vous.

Bien sûr, la solution n'est pas de sélectionner "Ne plus afficher cette boîte de dialogue". Cela ne l'affiche tout simplement pas, mais elle sera d'abord compilée avant de démarrer à chaque débogage.

Ce que nous voulons, c'est arrêter la compilation et commencer directement le débogage.

Tout d'abord, cette invite signifie que Visual Studio a détecté que certains fichiers ont expiré, mais qu'aucun fichier n'a été compilé lors de la compilation, et même les fichiers de sortie n'ont pas été régénérés. Cela ne me trompe-t-il pas ?

Eh bien, en fait, ça m'a trompé, c'est un bug de Visual Studio. Ce problème ne se produit généralement pas sur Visual Studio 2005, mais ce problème se produira sur Visual Studio 2010. Il n'est pas clair pour les autres versions.

Bien qu'il s'agisse d'un bug, il peut être résolu.

La raison de ce bug est que Visual Studio 2010 pense que les fichiers supprimés du projet ont expiré, comme un certain fichier d'en-tête dans le projet. Ce fichier d'en-tête a été supprimé et Visual Studio 2010 ne peut pas le trouver. ce fichier d'en-tête. , il est considéré comme expiré, donc chaque fois que VS est débogué, il pense que le projet est expiré et doit d'abord être compilé.

Alors pourquoi aucun fichier n'a été compilé lors de la compilation ? La raison est que ce fichier d'en-tête n'est utilisé par aucun fichier CPP ou C, donc aucun fichier n'a été recompilé lors de la compilation.

Le principe du bug est compris. La solution est de supprimer le fichier d'en-tête dans le projet VS.

Une manière stupide est de cliquer pour ouvrir chaque fichier d'en-tête dans VS et trouver celui qui ne peut pas être ouvert.

Une méthode intelligente consiste à écrire un script pour analyser le fichier du projet, puis à vérifier si le fichier existe.

Une autre façon consiste à le visualiser via DebugView.

Ce qui suit est une introduction à une telle solution.

1. Ouvrez le fichier devenv.exe.config (ce fichier se trouve dans %ProgramFiles%Microsoft Visual Studio 10.0Common7IDE ou %ProgramFiles(x86)%Microsoft Visual Studio 10.0Common7IDE)

2. Dans Ajoutez

<system.diagnostics>
<switches>
<add name=”CPS” value=”4″ />
</switches>
</system.diagnostics>

devant cette ligne 3. Redémarrez Visual Studio

4. Ouvrez DbgView (adresse de téléchargement : http://technet.microsoft.com/en- us/sysinternals/bb896647), cochez : Menu-》Capture-》Capture Win32 et Menu-》Capture-》Capture Events

5. Cliquez sur F5 pour démarrer le débogage et arrêtez-vous lorsque l'invite "Ce projet a expiré". " apparaît

6. Appuyez sur ctrl+F dans la fenêtre DbgView pour rechercher "pas à jour" et trouvez :

[120] Le projet 'D:cachetest1test1.vcxproj' n'est pas à jour date car l'entrée de build 'D:CACHETEST1FUN1.H' est manquante.

7. À ce stade, le fichier clé FUN1.H a été trouvé. Supprimez simplement ce fichier du projet et compilez-le à nouveau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn