2010-11-23 4 views
2

Je fais un appel COM synchrone qui s'exécute avec succès, mais quand je vérifie le HRESULT retourné c'est le 0x80040155 ci-dessus, ou "Interface non enregistré" et la sortie Ce paramètre ne contient aucune donnée.Interface non enregistrée (0x80040155) au retour de COM appel

Existe-t-il un moyen de réenregistrer les exécutables COM? Je ne suis même pas sûr que cela réglerait le problème, alors y a-t-il une autre façon de résoudre ce problème?

Ce problème semble être localisé sur un système particulier, car il fonctionne correctement sur d'autres systèmes.

+0

S'il est exécuté * avec succès *, il ne retournera probablement pas un code * error * commençant par 0x8 ... –

+0

Pouvez-vous décrire un peu votre configuration? Qui a développé le composant? Est-ce dans la maison? Comment l'avez-vous enregistré sur d'autres machines? –

+0

Les deux sont des composants internes, mais je ne suis pas sûr de savoir comment le processus appelé est enregistré. Je suis suivi séparément. Quand je dis qu'il a été exécuté "avec succès", je veux dire que je peux voir la connexion dans la fonction se faire appeler et aucune erreur n'est déconnectée. Mais oui, vous avez raison sur ce point. – dlanod

Répondre

1

La plupart executables COM peuvent être enregistrés en exécutant COMserver.exe /regserver

0

Après avoir enregistré les exécutables COM, j'ai encore reçu la même erreur Interface not Registered.

J'ai pu me débarrasser de l'exception en réparant Visual Studio. Vous pouvez le faire en cliquant sur Réparation dans l'assistant d'installation, ou dans Visual Studio 2017, ouvrez le Installer Visual Studio puis cliquez sur Choix supplémentaires ->de réparation.

+0

Cela ne répond pas vraiment à la question initiale. –

+0

Je pense que oui. "Existe-t-il un moyen de réenregistrer les exécutables COM? Je ne suis même pas sûr que cela puisse le réparer, alors * existe-t-il une autre façon de résoudre ce problème?". J'ai fourni une alternative pour le réparer. J'ai débattu l'ouverture d'une nouvelle question quand j'ai eu ce problème, mais il serait écrit presque à l'identique de cette question. @RomanR. –

+0

@RomanR. J'ai changé le libellé pour que ce soit une réponse à la question initiale. Merci! –

Questions connexes