Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 6 sur 6
  1. #1
    Invité régulier
    Inscrit en
    novembre 2003
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : novembre 2003
    Messages : 12
    Points : 7
    Points
    7

    Par défaut Transformer une DLL en une autre

    Bonjour à tous,

    Je ne suis pas un expert en C++, mais plutôt débutant de chez débutant.
    Ma question est simple (ou presque...)

    J'ai une DLL avec son .LIB et son .H.
    La DLL seule est inutilisable, que ce soit en VB, Windev ou ailleurs.

    Mon objectif est de fabriquer une autre DLL avec les fonctions de la première, mais utilisable dans d'autres environnements tel VB ou WINDEV.

    Je ne sais pas si je suis clair, mais je sèche.

    Merci de vos lumières.

  2. #2
    Modérateur

    Homme Profil pro Cyrille
    Network programmer
    Inscrit en
    juin 2010
    Messages
    2 178
    Détails du profil
    Informations personnelles :
    Nom : Homme Cyrille
    Âge : 27
    Localisation : France

    Informations professionnelles :
    Activité : Network programmer

    Informations forums :
    Inscription : juin 2010
    Messages : 2 178
    Points : 5 649
    Points
    5 649

    Par défaut

    Bonjour,

    ce que tu sembles vouloir faire est un adapteur.
    Tu écris ton code, utilisable en VB etc, qui utilise en interne la DLL précédente.
    Seule l'interface exposée doit être "VB-compliant", le code derrière étant camouflé à l'utilisateur.

    Par contre, ce n'est pas le genre de projet forcément facile pour un "débutant de chez débutant".

    Si ton langage destination est dans la liste, je te conseille l'utilisation de SWIG.

  3. #3
    Invité régulier
    Inscrit en
    novembre 2003
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : novembre 2003
    Messages : 12
    Points : 7
    Points
    7

    Par défaut

    Citation Envoyé par Bousk Voir le message
    Bonjour,

    ce que tu sembles vouloir faire est un adapteur.
    Tu écris ton code, utilisable en VB etc, qui utilise en interne la DLL précédente.
    Seule l'interface exposée doit être "VB-compliant", le code derrière étant camouflé à l'utilisateur.

    Par contre, ce n'est pas le genre de projet forcément facile pour un "débutant de chez débutant".
    En fait, je vais en dire un peut plus sur la raison.

    Je suis le développeur du CRM de mon entreprise, et je souhaite coupler la téléphonie IP à ce superbe outil (développé en Windev).
    Depuis Windev on peut appeler une DLL qui a ses fonctions "exportable", mais impossible de passer par un .LIB comme en CPP.
    Cette DLL vient du SDK du constructeur et permet de piloter les téléphones, mais cette DLL n'est utilisable que depuis CPP (d'ou le .LIB et le .H).

    l'objectif est de créer une DLL unique avec ses fonctions (donc celle de la DLL source) visible depuis n'importe quel environnement de DEV.

    On peut donc appeler cela un adaptateur...

  4. #4
    Invité régulier
    Inscrit en
    novembre 2003
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : novembre 2003
    Messages : 12
    Points : 7
    Points
    7

    Par défaut

    Bon, je n'ai pas du m'exprimer correctement.

    J'ai une A.dll et un A.lib (mais aussi le .def et le .a).
    A.dll ne peut pas être utilisé sans A.lib.

    Or, je souhaiterai obtenir une b.dll qui serait un mix de a.dll et de a.lib pour pouvoir l'utiliser de n'importe quel environnement de dev, comme n'importe quelle API.

  5. #5
    Expert Confirmé Sénior

    Homme Profil pro Emmanuel Deloget
    Développeur informatique
    Inscrit en
    septembre 2007
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Nom : Homme Emmanuel Deloget
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : septembre 2007
    Messages : 1 894
    Points : 4 448
    Points
    4 448

    Par défaut

    Citation Envoyé par miekisiak Voir le message
    Bon, je n'ai pas du m'exprimer correctement.

    J'ai une A.dll et un A.lib (mais aussi le .def et le .a).
    A.dll ne peut pas être utilisé sans A.lib.

    Or, je souhaiterai obtenir une b.dll qui serait un mix de a.dll et de a.lib pour pouvoir l'utiliser de n'importe quel environnement de dev, comme n'importe quelle API.
    Si j'ai bien compris, tu as une DLL C++ (A.dll) que tu souhaite utiliser avec d'autres langages.

    Si c'est le cas, pas le choix : il va falloir écrire un adapteur en C, et exporter les fonctions C qui appellent les méthodes C++ en faisant, si nécessaire, les conversions qui s'imposent.

    Si ce n'est pas le cas, bin, j'ai pas compris
    [FAQ des forums][FAQ Développement 2D, 3D et Jeux][Si vous ne savez pas ou vous en êtes...]
    Essayez d'écrire clairement (c'est à dire avec des mots français complets). SMS est votre ennemi.
    Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Café. C'est dépassé tout ça.
    Et si vous êtes sages, vous aurez peut être vous aussi la chance de passer à la télé. Ou pas.

    Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.

  6. #6
    Invité régulier
    Inscrit en
    novembre 2003
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : novembre 2003
    Messages : 12
    Points : 7
    Points
    7

    Par défaut

    Merci pour la réponse,

    EN fait, si j'ai bien compris d'après mes recherches sur le net on appel cela "wrapper" une DLL.
    L'idéal même serait de la wrapper en un assemblage .net

    Mais je suis bien incapable de faire cela, vu que je ne connait que peu C++.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •