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

Création DLL explicite avec une classe


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Par défaut Création DLL explicite avec une classe
    Bonjour,

    je travail sous visual studio 2005 et donc sous windows.

    Je voudrais savoir si on peut créer une dll contenant une classe avec une lisaison explicite ?

    explicite : sans avoir à lier avec un .lib dans l'exécutable, mais grace à LoadLibrary, GetProcAddress, FreeLibrary.

    merci !

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    À moins de n'employer que des fonctions virtuelles, tu ne peux.
    Il te faut également exporter une fonction libre qui instancie un objet et retourne un pointeur.

    C'est ce que fait COM/OLE avec ces interfaces et la fonction DllGetClassObject() que doit implémenter toute DLL COM/OLE.
    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 expérimenté Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Par défaut
    oki thx pour ta réponse rapide

  4. #4
    Membre expérimenté Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Par défaut
    bon j'ai réussi à compiler mon projet avec visual studio 2005, mais avec g++ j'ai quelque problème :s

    savez vous déjà si cela est possible ? et si oui comment car il n'y a pas beaucoup de documents sur internet pour la compilation d'une dll avec g++...

    merci d'avance !

  5. #5
    Membre expérimenté Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Par défaut
    j'ai trouvé une page qui va pouvoir m'aider je pense

    pour ceux que ça interesse :
    http://www.mingw.org/MinGWiki/index.php/sample%20DLL

    je teste ça tout de suite !

  6. #6
    Membre expérimenté Avatar de Bob.Killer
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    336
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 336
    Par défaut
    Bon je vais encore poser une question, et là je seche complet...

    (je bosse sous windows)

    maintenant je peux soit tout compiler sous Visual Studio 2005, soit tout compiler sous g++

    mais si je tente d'utiliser la dll compiler sous visual avec mon exe compilé sous g++, et inversement ça plante méchament...

    je pensais qu'une dll compiler sous n'importe quel langage pouvait être utilisé avec n'importe quel langage

    (je pense peu être savoir d'ou ça vient : les 2 dlls compilées sous g++ et Visual ne fond pas du tout le même poid, donc visual n'externaliserait pas qq truc ?)

    merci de tenter de me répondre !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 23/10/2014, 16h53
  2. [Mapping] Création de vue avec une classe implémentant "AuxiliaryDatabaseObject"
    Par nighthammer dans le forum Hibernate
    Réponses: 0
    Dernier message: 06/08/2012, 15h32
  3. Utilisation iterator avec une classe perso
    Par SteelBox dans le forum C++
    Réponses: 19
    Dernier message: 07/03/2005, 11h30
  4. [C#][WebServices] Appel methode avec une classe en paramètre
    Par bran_noz dans le forum Windows Forms
    Réponses: 6
    Dernier message: 10/09/2004, 16h41
  5. [Débutant][Conception] Erreur avec une classe interne
    Par Devil Redneck dans le forum Général Java
    Réponses: 5
    Dernier message: 11/06/2004, 15h45

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