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 :

Linker avec une DLL compilée avec MSVC6


Sujet :

C++Builder

  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Par défaut Linker avec une DLL compilée avec MSVC6
    Hello tout le monde,

    pour le contrat que je réalise actuellement je dois utiliser une API fournie et qui a été développée avec Visual Studio 6 (elle est dans un dossier qui s'appel msvc60).

    Evidement le .lib fourni ne fonctionne pas : il faut faire un coff2omf...
    Soit je fais et là ça ne marche toujours pas : il ne trouve pas les fonctions censées être dans la DLL. J'ai vérifié et re vérifié, le fichier .lib est bien ajouté à mon projet.

    Allez je me dit t'énerve pas on va tenter un implib...
    Le fichier d'origine .lib fait 16 Ko...l'implib m'en génère un de 6 Ko. Boah pourquoi pas.

    Je tente : ben non toujours pas.

    Que puis-je donc faire ?

    Merci d'avance pour votre aide !

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 407
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 407
    Par défaut
    Salut !

    C'est peut-être une histoire de script pour l'appel à GetProcAddress ?

    Dans le style : "_fonction" ou "fonction" ?

    A plus !

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Par défaut
    Euh.... je n'ai aucun GetProcAdress la DLL est liée lors de la compilation et pas chargée via un LoadLibrary.

    J'essayerais cette histoire de _

    Merci

  4. #4
    Membre Expert
    Avatar de DjmSoftware
    Homme Profil pro
    Responsable de compte
    Inscrit en
    Mars 2002
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Responsable de compte
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 044
    Billets dans le blog
    1
    Par défaut
    Salut
    il faut procéder en 2 étapes
    1. générer un fichier .def (contenant toutes les exportations de ta DLL)
    2 . génlrer un fichier lib a l'aide de Implib

    ex
    impdef -a temp.def tadllms.dll
    implib tadllBorland.lib temp.def

    cordialement
    vous trouverez mes tutoriels à l'adresse suivante: http://djmsoftware.developpez.com/
    je vous en souhaite une excellente lecture ...

    A lire : Les règles du forum

  5. #5
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 163
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 163
    Par défaut
    Ben au final je la charge dynamiquement avec un LoadLibrary
    et getProcAdress.

    Et ca marche

    Merci à tous pour vos réponses !

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

Discussions similaires

  1. Compilation avec une DLL.
    Par nkta1 dans le forum C++
    Réponses: 1
    Dernier message: 10/10/2014, 19h33
  2. Réponses: 7
    Dernier message: 23/10/2012, 17h17
  3. Réponses: 6
    Dernier message: 18/01/2011, 15h37
  4. Réponses: 0
    Dernier message: 04/08/2008, 17h05
  5. Réponses: 12
    Dernier message: 01/03/2007, 11h28

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