[Windows] Inclure un .dll au PATH sans utiliser la console.

cs_zinZ Messages postés 21 Date d'inscription vendredi 15 juin 2007 Statut Membre Dernière intervention 14 septembre 2007 - 14 sept. 2007 à 15:07
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 - 15 sept. 2007 à 12:39
Bonjour,

J'ai programmé un une interface graphique en Java 1.4 pour Windows.
Elle lit des fichier au format CDF. La distribution de ce format fournit une librairie Java pour lire ces fichier. Cependant cette librairie utilise des methodes native, donc j'ai besoin d'installé un petit proogramme contenant la librairie native .dll pour ces méthodes.

Je voudrais qu'il soit possible d'executer mon logiciel sans avoir à installer le programme CDF, mais en incluant directement la librairie native .dll dans mon propre programme.

J'ai lu que je devais spécifé le chemin du fichier dll dans le PATH du systeme d'exploitation.

Le problem, je n'utilise pas la console pour lancer mon soft, mais un JAR.
Comment je peux inclure le chemin du dll au PATH ?
Peut être en utilisant le manifest, mais je n'est rien trouvé.

Merci de votre aide.

1 réponse

Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
15 sept. 2007 à 12:39
Salut,

il y a plusieurs solutions voici les 2 plus utilisés :

 
- tu te fais un raccourci qui appel ton jar avec la commande :
javaw -Djava.library.path=./lib -jar monJar.jar
    (javaw <- pour ne pas afficher l'invite de commande (windows uniquement)
    ./lib <- admetton que la dll soit dans un répertoire lib de ton appli
    monJar.jar <- ton application)

- tu places la lib dans le ldpath :
    tu mets la lib dans le répertoire system32 de ton windows (trop lourd à mon gout surtout si windows n'est pas sur la partoche C: et si tu n'as pas les droits admin)
    tu mets la lib dans le répertoire <jre>/lib/i386 (encore plus lourd (1) il te faut savoir ou est le jdk. (2) il te faut savoir si tu es en  32bits ou 64bits , i386 ne concerne que le 32 bits, pour le 64 normalement c'est (juste testé sous unix) <jre>/lib/amd64)

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
0
Rejoignez-nous