122 votes

L'erreur HRESULT E_FAIL a été renvoyée par un appel à un composant COM. VS2012 lors du débogage.

J'ai un problème de débogage d'un projet migré de Visual Studio 2010 à 2012. Chaque fois que je veux le déboguer, je reçois le message d'erreur :

"L'erreur HRESULT E_FAIL a été renvoyée par un appel à un composant COM".

La compilation et l'exécution de l'application dans un serveur IIS local fonctionnent bien - mais je ne peux pas déboguer.

L'autre changement, à part le passage à VS2012, est que j'utilise désormais Team Foundation Server pour le contrôle des sources et le suivi des problèmes, mais je ne vois pas en quoi cela pourrait avoir une incidence.

Je peux réduire la liste à ce qui suit

  • Le fichier du projet - il a été transféré de VS 2003 en tant que projet de site web et a été découpé et modifié dans les différentes versions.
  • Bibliothèque d'exécution Crystal Report/une autre bibliothèque

Quelqu'un a une idée ?

88voto

datoml Points 1155

J'ai eu le même problème avec un projet c++ dans Visual Studio 2019.

La solution suivante a fonctionné pour moi :

  • Fermez Visual Studio.
  • Allez dans le dossier racine du projet et supprimez le répertoire .vs.
  • Lancez Visual Studio et ouvrez la solution.
  • La construction devrait maintenant fonctionner.

84voto

Tim Hall Points 1230

J'ai reçu ça souvent ces derniers temps. J'ai dû créer un nouveau fichier et déplacer le code dans le nouveau fichier pour le contourner.

Je l'ai réparé en suppression du fichier suo de la solution (d'après ce que je sais, il ne fait que stocker des informations comme les fichiers ouverts dans l'IDE et d'autres choses, et le supprimer ne cause aucun dommage réel).

Mon fichier était apparemment corrompu. (L'IDE ne se souvient pas des fichiers ouverts lors du redémarrage. Il faisait 1,7 Mo, ce qui semble important, même pour ma solution à 40 projets, qui a rarement plus de 50 fichiers ouverts à la fois).

Edit : J'ai récemment eu à faire cela dans VS2017 mais pour une autre raison, il prenait plus de temps à construire et prenait 5+ minutes pour arrêter une session de débogage, la suppression de ce ficher suo a tout arrangé, maintenant chaque fois que VS agit bizarrement la suppression de SUO est mon premier port d'appel.

77voto

Alejandro Haro Points 33

J'ai supprimé les fichiers csproj.user et cela a fonctionné pour moi.

Dans d'autres cas, pour corriger cette erreur, je vais dans l'onglet Web des propriétés du projet et je coche "Use Visual Studio Development Server" et "Auto-assign Port". Après cela, je dois reconstruire le projet et redémarrer VS.

16voto

Besnik Kastrati Points 21

Cela a résolu mon problème :

Démarrer -> Exécuter -> regsvr32 %SystemRoot%\System32\msxml3.dll

Démarrer -> Exécuter -> regsvr32 %SystemRoot%\SysWOW64\msxml3.dll

Avant cela, j'ai essayé la solution ci-dessus de Simon, mais elle n'a pas fonctionné pour moi !

Peut-être que la combinaison de ces deux solutions a fait l'affaire !

8voto

Ricky Divjakovski Points 237

Désolé de raviver un fil de discussion mort, mais j'ai résolu ce problème sur VS2017 en supprimant le cache du modèle de projet et le cache du modèle d'élément dans le dossier

%localappdata%\Microsoft\VisualStudio\[BUILD]

Puis réinitialiser les paramètres de visual studio via

Tools>Import and export settings>reset all settings

J'ai également entendu dire que désactiver la fonction "Chargement léger de la solution pour tous les projets" peut aider.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X