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 ?

0voto

Meghan N. Points 11

Je ne suis pas sûr des étapes exactes de reproduction de l'erreur (HRESULT E_FAIL a été renvoyé par un appel à un composant COM), mais la solution pour moi était la suivante :

  1. Fermez Visual Studio et réparez-le via le Panneau de configuration.
  2. Redémarrer le système

Après le redémarrage, l'erreur avait disparu.

0voto

Salman Saleh Points 144

J'ai rencontré le même problème dans Visual Studio 2017, Suivez ces étapes :

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

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

  3. Nettoyer le projet.

  4. Redémarrez le studio visuel.

    Les étapes 1 et 2 ont été copiées du post de Besnik Kastrati.

0voto

Behnam Gorbani Points 1

Je trouve cette réponse cliquez sur Ctrl+Alt+J cliquez sur (...) en haut Vous pouvez maintenant ajouter une dll à partir de Browse, .Net ou autre. Après avoir cliqué sur le bouton OK, cliquez sur (ajouter aux références du projet sélectionné dans l'explorateur de solutions) (il s'agit d'un bouton vert plus "+").

0voto

Bean Points 61

J'ai obtenu cette erreur en essayant d'installer un paquet nuget que j'avais précédemment téléchargé et installé dans un autre projet.

En cliquant sur Effacer tous les caches NuGet sous Outils > Options > NuGet Package Manager a résolu le problème pour moi.

0voto

kornman00 Points 349

J'ai rencontré cette erreur après avoir installé VS2019, mais en essayant d'ouvrir une grande solution (20+ projets), avec des projets vcxproj et csproj, qui ciblent VS2015. Les csproj se sont tous chargés correctement, tandis que les vcxproj ont tous échoué avec l'erreur du PO. La suppression du dossier .vs n'a pas fonctionné.

Ce qui a fonctionné, c'est le réglage de l'emplacement de repli de VC++, dans les paramètres de repli de la base de données de navigation.

Tools (menu)
-Options...
--Text Editor
---C/C++
---Advanced
----Browsing Database Fallback
-----Fallback Location

J'ai réglé le mien sur D:\VC++\v16 . Où j'utilise la v140 pour VS2015 et la v141 pour VS2017. J'ai également défini "Always Use" et "Do not warn".

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