web-dev-qa-db-fra.com

L'installation de Visual Studio 2010 (toute édition) n'installe que 2 fichiers dans le répertoire des en-têtes C++.

J'ai installé Visual Studio 2010 Premium sur mon poste de travail Windows 7. Après avoir chargé un projet de test C++, j'ai constaté qu'il ne parvenait pas à localiser iostream. J'ai jeté un coup d'oeil dans C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include et ai remarqué que seuls deux fichiers existent ici, srv.h et wmiatlprov.h

J'ai installé le produit VS2010 sur une machine virtuelle de test et ce répertoire ( ...\VC\include ) est rempli avec la collection habituelle de dossiers et d'en-têtes (les éléments que vous vous attendez à trouver dans le répertoire includes .)

J'ai pris les mesures suivantes pour rectifier les en-têtes manquants sur le poste de travail posant problème:

  • Vérifié que je n'ai pas de logiciel A/V actif (j'utilise MS Security Essentials, le temps réel est désactivé)
  • Désinstallez Visual Studio 2010 Premium et tous les autres sous-produits de Programmes et fonctionnalités
  • A exécuté l'outil de désinstallation VS2010 avec les paramètres/full et/netfx
  • Suppression des répertoires Visual Studio 10.0 à la fois dans Program Files et Program Files (x 86)
  • Réinstallation de Visual Studio 2010 à partir d'une image ISO récemment téléchargée à partir de MSDN.

J'ai également effectué les étapes ci-dessus, mais j'ai utilisé une édition différente pour la réinstallation, VS2010 Professional. 

Jusqu'à présent, rien ci-dessus n'a été capable de produire un produit Visual Studio 2010 installé avec tous les en-têtes C++ installés sur mon poste de travail.

Des idées?

30
Bear Golightly

La solution à ce problème est la suivante. Il est basé sur la solution donnée dans

http://connect.Microsoft.com/VisualStudio/feedback/details/774158/re-installed-visual-studio-2010-and-c-standard-headers-are-missing

  • Désinstallez Visual Studio 2010.
  • Désinstallez Visual Studio 2010 SP1 (malgré l’avertissement qu’il donne).
  • Ouvrez l'éditeur de registre (regedit).
  • Rechercher des clés nommées PaddedVersion
  • Supprimez toutes les clés parent VisualStudio\10.0\VC\Libraries, ou similaire (notez le numéro de version 10.0, qui correspond à 2010). Supprimez tous ces chemins de registre. La recherche de la clé PaddedVersion n'a pour but que de faciliter cette recherche.
  • Installez Visual Studio 2010.
  • Installez Visual Studio 2010 SP1.

Cette solution peut ne pas être minimale, mais cela fonctionne pour moi. J'espère que d'autres peuvent confirmer. La différence importante ici est que ce n'est pas seulement HKEY_LOCAL_MACHINE à partir duquel le chemin du registre doit être supprimé, comme indiqué dans le lien ci-dessus.

24
kaba

Bien que vous effectuiez des recherches sur ce sujet, il semble que peu importe la façon dont vous désinstallez Visual Studio, il reste toujours des morceaux.

Deux options à considérer.

Option 1 Installez VS 2010 sur une machine virtuelle. Compressez les fichiers nécessaires à partir de votre machine virtuelle. Copiez-les et décompressez-les sur le poste de travail. 

Option 2 Formater le disque dur. Installer une nouvelle version de Windows 7. Installer une nouvelle copie VS 2010.

3
g5insider

Le programme d’installation de Visual Studio est une bête instable, c’est un euphémisme. Le diagnostic générique est que votre base de registre est sale, ayant un enregistrement d'un sous-composant de VS installé alors qu'il n'est plus réellement présent. Il y a un lot de sous-composants et un nombre énorme d'entrées de registre qui gardent trace de leur état d'installation et de leur configuration. Retrouver une clé aussi sale est un grave problème d'aiguille dans une botte de foin.

Ce type de dommage au registre est très commun si vous avez déjà installé une version bêta ou RC. Je n'ai jamais eu de version bêta qui ne me pose pas de gros problèmes pour l'installation de la version RTM. La version bêta de VS2010 a été particulièrement pénible pour moi, même si je me suis mal tiré au pied en effectuant une mise à jour vers Windows7 sans désinstaller la version bêta. Un gâchis gigantesque, pour le dire gentiment. Vous pouvez vous attendre à un type de bouleversement similaire: vous avez déjà eu une désinstallation/installation qui ne s'est pas terminée. Et bien sûr, les dommages du registre sont toujours là pour transformer cela en misère.

Le problème est assez commun, il existe des outils de nettoyage Visual Studio autour de qui visent à purger le registre après une telle chose. Pour VS2010, il y en a plusieurs. Google "utilitaire de désinstallation vs2010" pour les trouver. Aucune idée s'ils sont différents d'une manière ou d'une autre, aucune raison à laquelle je peux penser de ne pas les exécuter tous.

Les puces sont sérieusement en panne alors que cela ne résout toujours pas le problème. La seule chose qui reste à faire est de creuser à travers les fichiers dd * .txt qui sont laissés dans le répertoire TEMP après une installation. Ils contiennent une trace détaillée des décisions de l'installateur. Méfiez-vous que vous allez noyer dans la quantité de données.

1
Hans Passant

J'ai essayé plusieurs cycles de désinstallation et de réinstallation. Le hack qui a finalement fonctionné consistait à copier l'intégralité du contenu du dossier VC à partir d'un ordinateur disposant d'une installation VS 2010 opérationnelle. Vous n'avez probablement pas besoin de copier tout cela, mais il me manquait plus de 3000 fichiers dans include, lib et d'autres dossiers de VC.

1
raoulcousins

La solution sur http://connect.Microsoft.com/VisualStudio/feedback/details/774158/re-installed-visual-studio-2010-and-c-standard-headers-are-missing n'a pas fonctionné pour moi .

Après avoir désinstallé Visual Studio 2010 et SP1, j'ai utilisé un logiciel de nettoyage de registre CCleaner, puis installé à nouveau. Ça a réparé.

0
twister

J'ai rencontré ce problème sous Windows 8.1 lorsque le programme d'installation Web de VS 2010 n'a pas pu être installé correctement la première fois. J'ai suivi les étapes de Kaba ci-dessus avec une légère différence et cela a résolu le problème pour moi (donc félicitations à Kaba). La différence est que j'ai supprimé toutes les clés “VisualStudio\10.0” et toutes ses sous-clés, ainsi que les “VisualStudio\10.0_Config” et les sous-clés.

0
tstodd