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 ?

1voto

Mike L Points 21

L'erreur s'est produite pour moi après avoir installé le dernier SDK de Windows 10. Je recevais l'erreur en construisant un projet C++ avec le SDK 8.1. Dans les propriétés du projet, je suis passé à la dernière version du SDK 10 et j'ai reconstruit. Cela a fonctionné. Je suis revenu à la version 8.1. Reconstruire. Pas d'erreur.

1voto

Xavi Points 39

Dans mon cas, il semble que ce soit parce que j'ai rangé certains fichiers, mais que certaines fenêtres connexes sont restées ouvertes.

Fermer toutes les fenêtres et reconstruire la solution a réglé le problème pour moi.

0voto

Bhushan Points 1

Mesures à prendre pour résoudre le problème :

Ouvrez votre solution/application Web dans VS 2012 en mode administrateur.

Allez dans IIS et notez les paramètres de votre application (par exemple, le nom du répertoire virtuel, le chemin physique, les paramètres d'authentification et le pool d'applications utilisé).

Supprimez (clic droit et sélectionnez Supprimer) votre application du site Web par défaut. Rafraîchissez IIS.

Retournez dans VS 2012 et ouvrez les paramètres (clic droit et sélectionnez propriétés) de votre application web.

Dans la section Serveurs, assurez-vous que vous avez sélectionné "Utiliser le serveur Web IIS local".

Dans la zone de texte Project Url, entrez le chemin de votre application (http://). localhost /Chemin d'application). Cliquez sur Créer un répertoire virtuel.

Allez dans IIS et appliquez les paramètres indiqués à l'étape 2. Rafraîchissez IIS.

8. allez dans VS 2012 et définissez ce projet comme projet de démarrage avec la page appropriée comme page de démarrage.

Cliquez sur le bouton run pour lancer le projet en mode débogage.

Cela a résolu le problème pour moi pour une application web qui a été migré de VS 2010 à 2012.j'espère que cela aidera ceux qui cherchent un problème spécifique.

La configuration de ma machine est la suivante : IIS 7.5.7600.16385

VS 2012 Professionnel

Windows 7 Enterprise (Version 6.1 - Build 7601:Service Pack 1)

0voto

Levent Sezer Points 561

Cela se produit parfois dans notre serveur de construction TFS (Gated check in). Il s'agit du dossier workspace. Je ne sais pas pourquoi mais l'accès au dossier workspace est parfois corrompu. Ce que je fais pour résoudre le problème est de supprimer les espaces de travail de construction TFS et de supprimer les dossiers d'espace de travail pertinents. La machine de construction TFS crée alors de nouveaux espaces de travail pour elle-même et le problème est résolu.

La solution de Tousif Ahmed devrait fonctionner pour les constructions locales. Copier le dossier de l'application à un autre endroit devrait faire la même chose que ce que je fais dans la machine de construction TFS.

0voto

Ross Youngblood Points 140

Dans mon cas, il semble que ce message puisse être émis par Intellisense dans Visual Studio 2013. La capture d'écran ci-dessous montre l'erreur en bas de VisualStudio 2013 après le premier chargement d'un projet client. VS2013 "ERROR-HRESULT-E Screenshot

J'ai commencé à chercher sur Google ce qui provoque cette erreur, et j'ai décidé d'essayer de supprimer les fichiers user.vxproj comme mentionné ci-dessus. J'ai cependant constaté que le projet s'est construit sans problème, puis après avoir quitté et rechargé le projet, je n'ai plus reçu l'erreur. Je suppose donc que dans mon cas, il s'agissait d'une corruption due au déplacement du projet de l'arborescence du répertoire des clients vers l'arborescence de mon disque de développement local. La clé ici est que dans mon cas, le problème était transitoire. Je n'ai RIEN fait et le problème a semblé se résoudre de lui-même. (Ce qui n'est généralement pas souhaitable, car je n'ai rien réglé et le problème pourrait revenir).

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