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

Dev-C++ Discussion :

Une DLL Dev-C++ avec application C++Builder ?


Sujet :

Dev-C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    lkjlgj
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : Angola

    Informations professionnelles :
    Activité : lkjlgj

    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Par défaut Une DLL Dev-C++ avec application C++Builder ?
    Bonjour !
    Voilà, j'ai avec succès compilé des dlls avec Dev-C++ que je fais tourner
    sans problème avec des programmes là-encore compilé dans Dev-C++.
    Mais si j'essaie de lancer mes dlls depuis une application créée avec C++ Builder, ca plante : j'ai une "access violation in machin.dll".

    Voici une partie du code de la DLL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    extern "C" __declspec(dllexport) __stdcall void DLLCoocsMain(charg1*, long, long, long, long, long,
                                                       std::string, std::string, std::string);
     
    //BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
    int WINAPI DllEntryPoint (HINSTANCE hInst,  unsigned long reason, void * lpReserved)
    {
     return TRUE;
    }
     
    extern "C" __declspec(dllexport) __stdcall  void DLLCoocsMain(charg1* PtrLex3, long FP, long FM, long SM, long FenMot, long ICtx,
                                                       std::string DelimsFenMots, std::string DelimsPhrase, std::string DelimsParag)
    {....
    Et voici l'appel depuis le programme :
    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
     
     typedef void (__stdcall *DLLFUNC_COOCS)(charg1*, long, long, long, long, long, std::string, std::string, std::string);
     
     HINSTANCE hinstDLL;
     DLLFUNC_COOCS ImpFuncDLL;
     
      if ((hinstDLL=LoadLibrary ("coocs.dll")))
      {
       ImpFuncDLL=(DLLFUNC_COOCS)GetProcAddress(hinstDLL, "DLLCoocsMain");
       if (ImpFuncDLL)
       ImpFuncDLL(PtrClcharg, 28, 5, 5, 1, 1, "", ".?!", "");
       if (ImpFuncDLL)MessageBox(NULL, "Validé", "Salut", MB_ICONERROR);
       else
    	{
    	return false;
    	}
       FreeLibrary (hinstDLL);
      }
    Quelqu'un a une idée ? Ou mieux, un exemple de code ?
    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
    Essaie déjà d'importer une fonction plus simple.
    Et es-tu sûr que ton pointeur de charg1 est valide ?
    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.

Discussions similaires

  1. [PHP 5.2] Utilisation d'une DLL sous PHP avec objet COM
    Par Bqda dans le forum Langage
    Réponses: 5
    Dernier message: 08/06/2009, 16h05
  2. Utilisation une Dll en c avec delphi
    Par yann87 dans le forum API, COM et SDKs
    Réponses: 1
    Dernier message: 22/12/2008, 16h14
  3. Utiliser une DLL en Delphi avec Visual Basic
    Par jix69 dans le forum Windows Forms
    Réponses: 8
    Dernier message: 25/11/2008, 02h32
  4. Appeler une Dll ActiveX VB avec C++
    Par alexorel dans le forum C++
    Réponses: 1
    Dernier message: 06/09/2006, 15h56
  5. Générer une dll 16 bits avec delphi 7
    Par chtiot dans le forum EDI
    Réponses: 4
    Dernier message: 21/02/2006, 18h50

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