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 Java Discussion :

Java et les dlls


Sujet :

Langage Java

  1. #1
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut Java et les dlls
    Je me pose 2 questions :
    - Peut on charger et utiliser une dll delphi en java ?
    - Peut on charger et utiliser des objets COM d'une dll ?

    Je sais que cela n'est pas trop dans l'esprit java du fait que le programme est du coup lié a une plateforme, mais cela me permettrais de commencer a developper une applciation utilisant mes modules actuels. Le temps venu de passer sous d'autre plateforme, je n'aurais qu'a reecrire les modules delphi/com ou migrer vers d'autres outils compatibles avec les plateformes requises.

    Pour la premiere j'ai lu des trucs sur les dlls c++ mais un peu plus de details ne me ferais pas de mal .... quand a l'usage de Delphi qui m'interesserais plus, je n'ai rien vu.

    Merci

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 548
    Par défaut
    Tu peux utiliser une dll avec JNI : en gros tu définis une classe avec des méthodes "native", et tu écris en C/C++ le code de ces méthodes. Enfin c'est une solution à réserver aux cas où tu n'as pas d'autre choix.

  3. #3
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    oui c'est ce genre de tutos que j'ai lut ... mais ca m'oblige a recoder mes dlls en C++ .. ou creer des wrapper en C++.
    J'aurais prefere pouvoir charger du delphi natif.
    A moins que si je declare mes fonction "cdecl" ma dll sera vu comme du c ou c++ ....

    Quand a COM ca serait bien aussi.
    J'ai aussi une dll c++ precompilé dont j'ai pas les sources (dll commerciale) mais je crois que la dll chargée doit etre genere a paritr des header genere par JNI non ?

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 548
    Par défaut
    Tu peux faire une dll toi même (avec les méthodes JNI) qui ne fait qu'appeler la dll commerciale.

  5. #5
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    Oui certes ....

  6. #6
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    De toute façon, quelque soit le cas tu seras obligé

    • Soit de réaliser un Wrapper autour de tes DLL (en général la solution la plus propre)
    • Soit modifier ton code delphi pour qu'il puisse directement communiquer avec java, mais là c'est extrêment crade.
    Et puis cadeau: http://www.pacifier.com/~mmead/jni/delphi/

    Tu dois avoir le nécessaire pour utiliser delphi avec JNI là dedans.

    Sinon pour faire joujou avec COM, vas voir du coté des librairies jacob ou j-interop

  7. #7
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    C'est super ca !
    Ca a l'air tres interessant ...

    Soit modifier ton code delphi pour qu'il puisse directement communiquer avec java, mais là c'est extrêment crade.
    C'est a dire ?
    Le lien que tu m'as envoyé est du type "crade" ?

    Merci

    PS : Si d'autres solutions sont proposable .. je dis pas non

  8. #8
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    En fait tu auras une DLL delphi possédant les headers JNI et faisant appel à tes propres DDL.

    Comme ça tu n'as pas à réécrire le code des DLL que tu utilises et changer les tyês utilisés.

    Dans le lien que je t'ai filé ils font de petits exemples vite faits, mais sur une DLL contenant de méthode et objets un tant soit peu plus complexes, mieux vaut intercaler une couche supplémentaire. Donc toujours wrapper.

  9. #9
    Membre Expert
    Avatar de Clorish
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    2 474
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 2 474
    Par défaut
    ok, pas de soucis
    je regarde le site, et je me ferais une idee de ce que je peux faire.

    une des toutes premieres application sera de generer une dll qui manipule un composant delphi pour la generation automatique des serials de nos appli, pour faire un serveru d'authentivication/validation distant.
    Le temps que l'on elabire notre propre algo de generation. Ce jour la la migration sur serveur en sera grandement facilite. Seul le codage en java de l'algo sera necessaire.

Discussions similaires

  1. Java et les DLL en COM..
    Par 304bl dans le forum Général Java
    Réponses: 4
    Dernier message: 07/06/2012, 15h50
  2. Question sur les DLL
    Par Hellmout dans le forum MFC
    Réponses: 7
    Dernier message: 22/10/2004, 02h51
  3. [Executable] Intégrer les DLL ou pas?
    Par Superstivix dans le forum C++Builder
    Réponses: 3
    Dernier message: 14/06/2004, 10h17
  4. [Débutant] Dialogue Java entre les frames pour client HTML
    Par Carrel dans le forum Général Java
    Réponses: 4
    Dernier message: 03/06/2004, 10h39
  5. Réponses: 3
    Dernier message: 24/10/2003, 21h46

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