Quel est le processus de dépannage pour la récupération de l'usine de classe COM pour le composant avec CLSID {XXXX} échoué en raison de l'erreur suivante: 80080005 "erreurs dans .Net? Pour clarifier: Je reçois ceci au moment de l'exécution, sur ma machine XP, avec le client étant le code de. Net fonctionnant sous le compte d'admin. {XXXX} fait référence à l'un de nos composants COM internes. D'après ce que je comprends, 0x80080005 fait référence à «autorisation refusée», mais où dois-je aller pour vérifier/changer les permissions? Ou ai-je complètement tort ici, et l'erreur vient du composant lui-même, et non du sous-système Windows COM?La récupération de la fabrique de classe COM pour le composant avec CLSID {XXXX} a échoué en raison de l'erreur suivante: 80080005
Répondre
Semble être une erreur plutôt générique liée au démarrage du serveur COM. Les questions possibles comprennent timeouts, logon failures (vérifiez le Q sur CO_E_SERVER_EXEC_FAILURE
), ou security permissions, ou (évidemment) un VS2008 ATL bug. Frapper une erreur dans CreateInstance ferait aussi l'affaire, je pense. Je commencerais par vérifier Event Log pour quelque chose d'intéressant.
Je viens de déterrer le code source du serveur. C'est C++/ATL. Frémir. Il semble qu'il soit plus facile de contourner ce problème pour aller au fond des choses. – user8032
Bonjour. Votre message est très intéressant. Cependant, les liens qui s'y trouvent semblent avoir un problème de syntaxe, et le secfac.htm semble être passé à http://alt.pluralsight.com/wiki/default.aspx/Keith/ComSecurityFaqEx2.html – chiccodoro
0x80080005 est "L'exécution du serveur a échoué", selon ERRLOOK.EXE. WinError.h liste ceci comme CO_E_SERVER_EXEC_FAILURE
. Pas "Accès refusé".
D'oh. Merci! Cela signifie-t-il que le serveur a échoué ou que COM n'a pas réussi à instancier le serveur? – user8032
Une chose que vous pouvez regarder est la configuration de sécurité DCOM. Il est contrôlé par l'utilitaire dcomcnfg. Il y a helpful tutorial videos sur le Web pour expliquer comment l'utiliser. Il y a aussi un forum thread on the ASP.NET qui explique comment utiliser dcomcnfg.
Vraiment besoin de plus d'informations pour répondre. Votre application est-elle une application de bureau? Est-ce qu'il fonctionne en tant qu'utilisateur std ou administrateur? L'objet COM est-il local ou distant? –
Votre question peut être trop vague pour recevoir une réponse significative. Recevez-vous cette erreur lors de la compilation? Run-time? Quel composant COM provoque l'erreur? Si l'erreur survient au moment de l'exécution, courez-vous en tant qu'utilisateur non administrateur sous XP ou Vista? –