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

Langage Delphi Discussion :

[JNI] communication entre mon programme et une librairie java


Sujet :

Langage Delphi

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Mars 2007
    Messages : 91
    Par défaut [JNI] communication entre mon programme et une librairie java
    Salut tout le monde!
    j'ai un programme qui utilise une librairie écrite en java, j'arrive a charger la librairie et appeler des procédures, mon problème et de passer des objets ou des adresses de procédure, pour un callback par exemple;

    exemple:
    j'ai ce code dans la libraire en java:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public interface callbackproc
    	{
    		int callbackproc(int a1, int a2);
    	} 
    public static native void Java_callback(callbackproc proc);
    comment je peux passer a la procédure Java_callback l'adresse de ma fonction callbackproc que je crée dans mon programme et qui pourra prendre cette forme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    function Java_callback_proc(a1, a2: integer): integer;
    je serai reconnaisson si quelqu’un peut m'aider.
    merçi d'avance

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 076
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 076
    Par défaut
    Tu notes que ce n'est pas une CallBack direct mais celle d'une interface !

    En espérant que les Interfaces JAVA et les Interfaces Delphi (plutôt conçu pour le COM) sont compatibles !

    Attention, le nom de l'interface et de la méthode dont ton exemple sont les mêmes, je ne sais si c'est autorisé ça !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    type
      TCallBackImpl = class(TInterfacedObject, callbackproc) // implementation d'interface et donc de la méthode callbackproc
      public
        function callbackproc(a1, a2: integer): integer; stdcall; // je présume de cette convention d'appel !
      end;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function TCallBackImpl.callbackproc(a1, a2: integer): integer;
    begin
      ...
    end;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var
      Intf: callbackproc; 
    begin
      Intf:= TCallBackImpl.Create(); // libération implicite par TInterfacedObject
      Java_callback(Intf);
    end;
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. Communication entre fichier js et une servlet Java via Ajax
    Par belpg dans le forum Ext JS / Sencha
    Réponses: 3
    Dernier message: 17/01/2013, 12h21
  2. Communication entre 2 programmes (débutant)
    Par mandaillou dans le forum C++
    Réponses: 43
    Dernier message: 12/12/2006, 21h54
  3. interaction entre mon programme & openOffice
    Par artatum dans le forum C
    Réponses: 4
    Dernier message: 10/10/2005, 22h28
  4. Communication entre mon appli et un site web
    Par Neilos dans le forum C++Builder
    Réponses: 5
    Dernier message: 17/05/2005, 07h53
  5. Question de pointeur entre un programme et une DLL
    Par Neilos dans le forum C++Builder
    Réponses: 12
    Dernier message: 01/02/2005, 19h12

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