DLL utilizzo metodi

di il
2 risposte

DLL utilizzo metodi

Ciao a tutti ,
il mio problema è il seguente:
devo sviluppare un applicazione in JAVA che mi consenta di utilizzare dei metodi presenti in una .DLL
so che per fare ciò devo passare attraverso un ponte JNI ma ho molta confusione in testa
Qualcuno potrebbe spiegarmi il più dettagliatamente possibile come risolvere ?!
Grazie mille in anticipo !
Lo smile che meglio riassume la mia situaziona attuale è questo

2 Risposte

  • Re: DLL utilizzo metodi

    ilDodo ha scritto:


    devo sviluppare un applicazione in JAVA che mi consenta di utilizzare dei metodi presenti in una .DLL
    so che per fare ciò devo passare attraverso un ponte JNI ma ho molta confusione in testa
    Qualcuno potrebbe spiegarmi il più dettagliatamente possibile come risolvere ?!
    Java Native Interface permette di invocare codice nativo in librerie "dinamiche" (.dll/.so/altro a seconda del sistema operativo), tipicamente realizzate in C/C++.

    Il punto fondamentale però è che la libreria dinamica non può essere una qualunque. La libreria deve essere sviluppata rispettando tutta una serie di aspetti e "convenzioni" specifiche di JNI. Poi la libreria per JNI potrà a sua volta invocare altro, ad esempio codice in librerie dinamiche di sistema o altre.

    Non so che DLL hai necessità di invocare. Segui comunque questa logica:

    1) Se si tratta di una libreria di sistema o comunque di una funzionalità che è "notevole"/utile o che concettualmente esiste per i vari S.O., verifica se esiste già una libreria Java che fa uso di JNI e ti semplifica il lavoro "astraendo" l'accesso a quella funzionalità.

    2) Altrimenti verifica il progetto JNA (Java Native Access, cerca in rete). Ti permette di invocare funzioni in librerie dinamiche senza dover sviluppare una DLL. In pratica fa da "ponte" verso una qualunque libreria dinamica.

    3) Altrimenti ancora devi per forza lavorare a livello di JNI, sviluppando una libreria dinamica in C/C++.

    Mi sembra scontato che per 2) e soprattutto 3), devi avere conoscenze molto solide su C/C++ e sulle librerie dinamiche e eventualmente anche sulle API native del S.O.
  • Re: DLL utilizzo metodi

    Guarda la mia dll in questione si chiama wintab32.dll il suo file allegato per le specification è al seguente link sinceramente mi trovo parecchio in crisi
    http://www.sonycsl.co.jp/projects/ar/restricted/wintabl.html
Devi accedere o registrarti per scrivere nel forum
2 risposte