Bonjour,

j'aimerais pouvoir lancer des fonctions d'une dll depuis un programme java. Je commence donc en douceur avec un simple helloworld mais celui-ci ne marche pas. Le message d'erreur que je recois est le suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
java.lang.UnsatisfiedLinkError: no Synchro in java.library.path
	at java.lang.ClassLoader.loadLibrary(Unknown Source)
	at java.lang.Runtime.loadLibrary0(Unknown Source)
	at java.lang.System.loadLibrary(Unknown Source)
	at inter.HelloWorld.<clinit>(HelloWorld.java:8)
Exception in thread "main"

le code java est le suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
package inter;
 
public class HelloWorld {
 
	 public native void displayHelloWorld();
 
	static {
	    System.loadLibrary("Synchro");
	}
 
	    public static void main(String[] args) {
	       new HelloWorld().displayHelloWorld();
	    }
 
}


ma dll s'appelle Synchro.dll.
Je l'ai déposé dans Windows/sytem32 et aussi dans windows.
Mon path est : c:\windows\Sytem32.

Quelqu'un a t il une idee? pourquoi la dll n'est elle pas trouvee?
NB : je travaille sous eclipse, j'ai généré mon HelloWorld.h à partir de la commande "javah -jni HelloWorld" j'ai créé un projet sous Visual C++ et j'ai créé "Synchro.cpp" faisant appel à HelloWolrd.h et jni.h. Ensuite j'ai compilé ma dll avec Visual C++ toolkit 2003 avec la commande suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
cl /LD /I"C:\Program Files\Microsoft Visual Studio\VC98\Include" /I"C:\Program Files\Microsoft Visual Studio\VC98\Lib" /I"C:\Program Files\Java\jdk1.5.0_05\include" /I"C:\Program Files\Java\jdk1.5.0_05\include\win32" /Fe"C:\Program Files\Microsoft Visual Studio\MyProjects\Synchro\Synchro.dll" "C:\Program Files\Microsoft Visual Studio\MyProjects\Synchro\Synchro.cpp" /link /libpath:"C:\Program Files\Microsoft Visual Studio\VC98\Lib" /defaultlib:"C:\Program Files\Microsoft Visual Studio\VC98\Lib\WS2_32.lib"
et quand je run sous eclipse j'obtiens le message d'erreur disant qu'il ne trouve pas la dll.
Une idee?

Merci d'avance pour vos réponses