-
Applet utilisant une DLL
Bonjour,
J'ai une petite applet qui utilise une DLL et je voulais savoir s'il était possible d'utiliser directement cette DLL (par exemple en la mettant dans le .jar (j'ai testé et ça ne marche pas)) pour eviter de la copier dans un des paths Windows et de faire un loadLibrary("ma DLL") ???
J'espere que je suis claire :?
Merci
-
pourquoi tu veut utiliser une DLL ?
ca sera pas portable :/
-
Cette DLL me permet de parcourir la base de registre Windows (donc ce n'est pas fait pour être portatif).
Personne n'a une solution ???
-
Complément d'information
Bonjour,
Comment faits-tu pour essayer de récupérer ta dll dans ton archive depuis ton code, parceque normalement, il n'y a aucun problème en invoquant simplement getClass().getClassLoader().getResource("cheminCompletDansL'archive/fichier.dll"). Cette méthode provenant de Java.lang est accessible à tous les objets Java, et renvoie une URL. Si tu peux ensuite dans ton code, fournir ta dll à partir d'une URL, aucun problèmes....
Mais cela dépend de comment tu faits.
En effet, je ne maîtrise que très peut JNI, et je ne sais pas du tout développer en C, moralité, je n'ai jamais créé de wrapper Java associé à une dll, du coup, je ne sais pas comment il faut fournir la dll à jni, mais comme dit plus haut, si ça peut le faire avec une URL, alors cela devrait fonctionner.
Salut.....
-
Bonjour rori
Je veux bien vous dire que ton idée est extrement interessante.
Moi aussi j'ai un probleme comme cela, puisque j'ai besoin d'acceder a la base de registre pour lire des clés a partir d'une applet java mais j'arrive pas.
on m'a dit que la solution estvd'essayer de sign,er l'applet pour garantir l'acces securisé mais la ta methode est bcp mieux.
Je crois qu'il sera possible d'utiliser la DLL a partir du serveur (!!??)
Donc s'il vous plait si vous pauvez m'envoyer le lien de la DLL ou bien m'en envoyer (si elle est la votre) je vous serai tres reconnaissant...
Merci d'avance pour l'aide:oops:
-
Bonjour!
Moi aussi je suis dans le même problème, je veux utiliser une dll qui est présent sur un flash disk usb, ce pendant pour le faire doit je signer l'applet ou non.
Si c'est non, alors pourquoi appliquer les restrictions d'accès au disque local pour une applet, puisqu'on peut faire ça par l'intermédiaire d'une DLL.
-
Pour pouvoir faire quoi que ce soit de ce genre (installation, accès disque,...) il va falloir signer l'applet....même si une dll est présente lorsque vous essaierais de la loader il faut bien avoir l'autorisation du client...
M'enfin je peux me lourder... et honnêtement signer une applet c'est pas la mort....
-
D'après quelques recherches que j'ai effectué il faut signer la dll ou modifier les régles de sécurité de java.
L'appel de la DLL écris dans un autre language (par exemple C++) se fait par l'intermèdiaire d'un Framework JNI (Java Native Interface).
Quelqu'un peut me corriger si je me trompe ou si j'ai oublié quelque chose.
Merci
-
Bonjour,
Vous ne trompez pas, mais j'aime bien savoir, si on va utiliser une DLL pour l'acces systeme, par la suite lorsque le client va appeler l'applet, l'applet va à son tour appeler la DLL, donc on aura besoin de télécharger la DLL sur la machine cliente ou quoi, paurrait t-on par exemple utiliser la DLL à partir de son emplacement sur le serveur ? Sinon c'est quoi l'utilité d'utiliser une applet alors.:roll:
Autre chose personne ne sait comment peut on recuperer les infos systeme, ainsi que l'acces à la base de registre en C++/C ou meme une DLL qui permet de faire ça pour l'utiliser en JNI par la suite.
Merci d'avance pour votre aide