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

MFC Discussion :

[Activex] Passage de Structure


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    43
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 43
    Par d�faut [Activex] Passage de Structure
    Bonjour,

    Je cherche � cr�er une M�thode "GetTruc" qui pourait avoir comme param�tre une structure.

    J'ai trouver ceci :
    http://c.developpez.com/faq/vc/?page...dPrivateStruct

    J'ai fait comme il est dit :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    void CMyCCtrl::GetTruc(long Id, LPUNKNOWN Ligne)
    {
        memmove((MaStructure*)Ligne,&LigneTampon,sizeof(LigneTampon));
    }
    Apparement vc++ ne rencontre pas d'erreur.

    Le seul probleme c'est que si je veux y acceder dans vb je declare ma structure et la passe en

    param�tre et bling ca plante.


    J'ai un ptit prog qui liste les m�thodes des activex quand je regarde le mien ca fait :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    Void GetPlage(
    	 Long Id
    	 LPUNKNOW Ligne
    	)
    En regardant sur d'autre activex j'ai vu que certain pouvais faire des choses comme ca:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    Void GetPlage(
    	Pointer to User Defined riid
    	)
    J'ai ensuite test� en faisant :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    void CMyCCtrl::GetTruc(long Id, LPUNKNOWN FAR* Ligne)
    {
        memmove((MaStructure*)Ligne,&LigneTampon,sizeof(LigneTampon));
    }
    Qui se traduit par:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    Void GetPlage(
    	 Long Id
    	 Pointer to LPUNKNOW Ligne
    	)
    Pour une structure perso, doit on la definir quelque part dans l'activex ?
    (Je passe par le classwizard et lui ne me propose que des types connus : long,short,etc...)

  2. #2
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    attention a l'alignement memoire dans une structure ,vb s'aligne sur 8 par defaut avec visual C++ c'est reglable. (pragma pack )

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    43
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 43
    Par d�faut
    Alors j'ai fouiner sur le net.
    Et finalement j'ai trouver d'ou venait le probl�me.

    VB ne reconnait pas LPUNKNOWN
    Il suffit de faire comme ca:

    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
    16
    17
    18
    //DANS LE ODL
    [id(1)] void GetPlage(long IdPlage, long* LigneP);
     
    //DANS LE GLOBALE DE LA CLASSE
    typedef struct SSave
    {
    	long Id1;
    	long Id2;
    } SSave;
     
    //
    void CMyCtrl::GetTruc(long Id, long Ligne)
    {
             SSave* LigneSave;	
             LigneSave=(SSave*)Ligne;
             LigneSave->Id1=1;
             LigneSave->Id2=2;
    }


    Probl�me r�solu

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

Discussions similaires

  1. Passage de structure dans une DLL
    Par nikoko34 dans le forum VB.NET
    R�ponses: 1
    Dernier message: 18/07/2008, 10h11
  2. Passage de structure en param�tre
    Par jojodu31 dans le forum D�buter
    R�ponses: 6
    Dernier message: 24/04/2008, 16h41
  3. Passage de structure en param�tre
    Par pegase.90 dans le forum C
    R�ponses: 16
    Dernier message: 16/04/2007, 15h56
  4. Passage de structure en parametres
    Par beb30 dans le forum Visual C++
    R�ponses: 10
    Dernier message: 28/08/2006, 17h31

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