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++/CLI Discussion :

IDispatch is ambigous


Sujet :

C++/CLI

  1. #1
    Membre �prouv� Avatar de Flow_75
    Femme Profil pro
    Ing�nieure
    Inscrit en
    Mai 2005
    Messages
    1 100
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    �ge : 42
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieure
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 100
    Par d�faut IDispatch is ambigous
    Bonjour la communaut�.

    Voila, j'ai un probleme d'h�ritage COM.

    J'ai une classe qui h�rite de deux interfaces qui h�ritent chacune de l'interface IDispatch.

    Quand je fais un QueryInterface pour avoir l'interface IDispatch, j'ai la fameuse erreur "IDispach is ambiguous".

    Comment peut on r�soudre ce probleme ?
    Merci.
    F.

  2. #2
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Tu dois retourner explicitement l'une des deux Dispatch, en faisant deux casts successifs qui sont individuellement non-ambigus.
    En code non-manag�, �a donnerait �a:
    Code C++ : S�lectionner tout - Visualiser dans une fen�tre � part
    *ppv = static_cast<IDispatch*>(static_cast<IInterfaceDualeA*>(this));

    Si tu utilises un fichier d'IDL pour faire une Type Library, tu pourras marquer l'interface en question comme �tant la dispatch par d�faut de l'objet, il me semble.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre �prouv� Avatar de Flow_75
    Femme Profil pro
    Ing�nieure
    Inscrit en
    Mai 2005
    Messages
    1 100
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    �ge : 42
    Localisation : France, Paris (�le de France)

    Informations professionnelles :
    Activit� : Ing�nieure
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 100
    Par d�faut
    Merci, ca marche !!!


+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [META] Choix ambig�s
    Par Hibou57 dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 4
    Dernier message: 01/08/2006, 13h06
  2. [UML] Mod�lisation ambig�e
    Par djflex68 dans le forum Diagrammes de Classes
    R�ponses: 3
    Dernier message: 19/03/2006, 12h43
  3. [Interfaces] IDispatch et DispInterfaces
    Par Clorish dans le forum Langage
    R�ponses: 2
    Dernier message: 19/12/2005, 09h57
  4. Qu'est ce que le type IDISPATCH ?
    Par bob1980 dans le forum API, COM et SDKs
    R�ponses: 1
    Dernier message: 09/12/2005, 12h44
  5. [Com] Interface IDispatch.Invoke
    Par Laurent Dardenne dans le forum Windows
    R�ponses: 4
    Dernier message: 15/06/2004, 22h51

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