IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Erreur -2146234304L (0x80131040) sur CoCreateInstance sur une ressource tlb


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 229
    Par défaut Erreur -2146234304L (0x80131040) sur CoCreateInstance sur une ressource tlb
    Bonjour,

    J'utilise c++builder XE.
    On me fournit une dll et un tlb.
    A partir de ce tlb je génère grâce au wizard un .h.

    Ensuite j'ai le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    	CoInitialize(NULL);
     
    	CLSID CLASSID_ISUF =
    	{0x770FAFA1, 0xF610, 0x4B30, {0xA0, 0xD2, 0xCF, 0x3E, 0x87, 0x85,
    				0xB9, 0x6E}};
     
    	GUID INTERFACEID_ISUF =
    	{0x3E66D452, 0x1418, 0x4066, {0x9F, 0x8F, 0xF1, 0x2E, 0x2D, 0xAC,
    				0x9C, 0x0E}};
     
    	IAppMgr * interfaceAppMgr;
     
    	HRESULT Hr = CoCreateInstance(CLASSID_ISUF, NULL, CLSCTX_INPROC_SERVER,
    		INTERFACEID_ISUF, (void**)&interfaceAppMgr);
    Hr vaut systématiquement -2146234304L (0x80131040).
    Quelqu'un peut il me dire de quoi il retourne ?

    merci et bonne année !!!
    Pascale38

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 229
    Par défaut
    Petite précision, cela ne fonctionne pas avec la nouvelle version de la dll et du tlb. Avec la première version fournie cela fonctionnait très bien !
    Si je remplace dans mon répertoire d'exécution la dll par l'ancienne, ça fonctionne !!
    Comme si quelque part c'était toujours l'ancienne dll qui était référencée ???

  3. #3
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2005
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 401
    Par défaut
    Hello,

    Tu as donc 2 versions de la dll et 2 versions du tlb associé, c'est bien ça ?
    Tu as donc dû généner les .h pour chaque version de la dll ?
    Est-ce que tu as bien recompilé ton appli avec les .h générés à partir de la nouvelle version de la dll ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 229
    Par défaut
    Bonjour,

    oui, oui, tout bien fait comme tu as dit.
    En fait le problème vient de l'enregistrement de la dll.
    Pour pouvoir l'utiliser j'ai fait un regasm avec ma première version.
    Puis j'ai refait un regasm avec ma 2ème version. Les 2 versions sont bien enregistrées en bas de registre, mais ça ne fonctionne pas, c'est la première version enregistrée qui est "réclamée". Si je dés-enregistre la 1ère version (regasm /u) tout se met à fonctionner correctement...
    Je trouve cela super étrange, est ce normal comme fonctionnement ???
    C'est super contraignant en tout cas !!!

    merci !
    Pascale38

  5. #5
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2005
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 401
    Par défaut
    Hello,

    Faudrait regarder comment sont enregistrées les dll (cf. ce lien)...
    A priori ça ne me paraît pas déconnant de n'avoir qu'une seule version de dll enregistrée à un instant donné (si il doit choisir la dll à partir des GUID, comment choisir ensuite la bonne version ?)

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 229
    Par défaut
    moui c'est pas tout à fait déconnant, bien qu'il me parait plus logique que ce soit le dernier inscrit qui a raison plutôt que le premier... Car sinon autant refuser de l'enregistrer si ça sert à rien !!!

    J'ai pas bien compris le rapport avec ton lien ? Je sais comment elle sont enregistrées puisque c'est moi que le fait à la mano avec regasm...

  7. #7
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2005
    Messages
    401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 401
    Par défaut
    Pour le lien, je pensais que ça te permettait de voir des détails sur comment elles étaient enregistrées (indication de la dll vraiment utilisée)
    Après, ce n'est peut-être pas la bonne méthode (si elles ne sont pas effectivement ajoutées dans le GAC...)

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 229
    Par défaut
    non elles ne sont pas ajoutées dans le GAC ! Mais merci quand même !!!

Discussions similaires

  1. Réponses: 2
    Dernier message: 24/08/2008, 18h58
  2. Erreur ASP : le test qui marche une fois sur 2 !
    Par Ryo_san dans le forum ASP
    Réponses: 2
    Dernier message: 04/07/2006, 09h47
  3. Réponses: 16
    Dernier message: 19/11/2005, 16h47
  4. Erreur à l'assignation du PageControl sur une tab
    Par MarcP dans le forum Composants VCL
    Réponses: 1
    Dernier message: 08/08/2005, 22h49
  5. [Format Date] erreur sur insertion d'une date
    Par philobedo dans le forum SQL
    Réponses: 4
    Dernier message: 14/06/2005, 10h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo