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

Delphi Discussion :

Format DLL ?


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de jambonstar
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut Format DLL ?
    Bonjour,

    J'ai encore une fois une question bien chiante pour vous.

    Je dois communiquer avec une application qui sait appeler des DLL.
    Cette application a son propre langage de programmation.

    Dans l'aide, on me demande à ce que la signature des fonctions de la DLL soit de ce type :

    extern "C" __declspec(dllexport) int WINAPI YourFunction( long iPid, long iAppProcId, long hThreadhandle, char * pBuffer );


    Malheureusement, je ne sais pas si je peux faire un truc comme ça avec Delphi... On dirait du C.
    Est-ce que quelqu'un peut me dire comment faire avec delphi ?

    Merci d'avance,
    Je continue de chercher de mon coté.

  2. #2
    Membre confirmé Avatar de jambonstar
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut
    Voilà ce que j'ai fait en Delphi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    function MaFct(iPid : Longint; iAppProcId : longInt; hThreadHandle : longInt; pBuffer : Pchar):Integer;
    Vous croyez que ca va fonctionner ?

  3. #3
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 937
    Billets dans le blog
    6
    Par défaut
    je pense que tes déclarations dans la dll doivent suivre ce format :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Function YourName(iPid: longint; iAppProcId: longint; hThreadhandle: longint; pBuffer: PChar): integer; cdecl;
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  4. #4
    Membre confirmé Avatar de jambonstar
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Par défaut
    Salut merci pour ta réponse.

    Euh c'est quoi ce cdecl à la fin ? C'est ca qui assure la définition à la "C" ?

  5. #5
    Membre éclairé
    Inscrit en
    Septembre 2006
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 81
    Par défaut
    En effet il faut rajouter la directive d'appel. Par contre cela va dépendre du language qu'il l'appel. Essaye avec cdecl et si il fait une jolie plantée essaye stdcall

    Les directives d'appel indique entre autre l'ordre de passage des paramêtres ainsi que le mode de suppression des paramètres sur la pile. Si tu recherche cdecl dans l'aide il y a une explication avec comparaison entre les différentes directives.

    Au plaisir

Discussions similaires

  1. dll pour Extraire des pages au format jpg d'un pdf
    Par toniob44 dans le forum VB.NET
    Réponses: 0
    Dernier message: 06/06/2012, 20h28
  2. Réponses: 4
    Dernier message: 07/05/2007, 16h47
  3. [CR] Dll ou format d'exportation incorrect
    Par Drahu dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 07/10/2004, 09h11
  4. lire une image au format RAW
    Par Anonymous dans le forum OpenGL
    Réponses: 5
    Dernier message: 20/05/2002, 00h11
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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