foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006
-
24 juil. 2006 à 08:24
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006
-
26 juil. 2006 à 12:53
salut tt le monde
je travaille avec les dll et je ne sais pas ou positionner ces dll pour qu'elle soit accessible par le projet (je travaille avec jbuilder)
en fait j'ai essaye ce bout de code
///////////code///////////////////
package project;
public class ClearScreen{
public static native void clear();
static{
System.loadLibrary("ClearScreen");
}
}
///////////////////////////////////////
resultat de compilation
java.lang.UnsatisfiedLinkError: clear
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1459)
at java.lang.Runtime.load0(Runtime.java:737)
at java.lang.System.load(System.java:811)
at yarahim.TestWinAPI.main(TestWinAPI.java:9)
Exception in thread "main"
//////////////////////////////////////////////////////////::::::::::::::::::::::::::::::::::::::://///////////////////////////:
pour la deuxieme solution ca ne marche pas egalement d'ailleurs l'exemple q j'ai poste utilise System.loadlibrary
//////////////////////////////:::::::::::::::::::::::::::::::::
je n'ai pas de lib ds mon projet et j'ai essaye de mettre ma dll ds tt les repertoires de ma classepath Ca ne marche pas
je ne sais vraiment pas comment faire
help please
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 25 juil. 2006 à 10:56
Salut,
déj cela ne sert à rien de loader kernel32 via ton appli java tu ne pourra pas l'utiliser d'irectement
Dsl de te dire ça et d'être aussi cru mais tu vas droit dans le
mur et en vue de la lecture de ton message sur le 'post'
http://www.javafr.com/infomsg_JNI-EXCEPTION-HELP_770768.aspx (en bas de
page) et de la lecture de ton mail perso je te conseil vivement avant
de continuer d'aller sur les how to de sun dans la section JNI et de te
former sur les principes et concepte de celui-ci.
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 25 juil. 2006 à 13:27
salut
je veux dire les etapes de construction du shared dll
jusqu'a la j'ai reussi a faire
fichier.java je l'ai compilé et utilisier fichier.class
generer fichier.h a l'aide de javah
implementer fichier.c
je me suis bloque par la suite est ce que vous pouvez m'aidez a avoir les autres etapes avec les ligne de commandes adequates parcque j'ai eu enormement de problemes
merci
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 25 juil. 2006 à 14:13
salut
bon ca va j'ai suivi le tutorial que vous m'avez indiquez de sun la j'arrive pas a comprendre cette ligne
cl -Ic:\java\include -Ic:\java\include\win32
-MD -LD HelloWorld.c -FeHelloWorld.dll
est ce que vous pouvez m'expliquer cette ligne de commande pourque je puisse terminer
merci
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 25 juil. 2006 à 14:38
cl ça doit etre le compilot crsoft
I c'est pour rajouter un repertoire d'include afin que ta compile ne merdouille pas
MD vérifie que les
versions multithread liées dynamiquement des routines runtime sont
sélectionnées à partir des fichiers d'en-tête standard (.h). Le
multithreading est nécessaire pour la programmation managée en partie
parce que le garbage collector (en gros avec ca tu te linque à MSVCRT.LIB)
LD Pour préciser que tu veux faire une dll
HelloWorld.c le fichier à compiler
va sur le site de crosoft ou sur cppfrance si tu as des prob de compilations C/C++
mais avant commence par le début en apprenant à compiler un programme en C/C++ sous windows.......
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 25 juil. 2006 à 14:44
salut
bon ca va j'ai copié cette ligne telle qu'elle voici le resultat
HelloWorld.c
HelloWorld.c(1) : fatal error C1083: Cannot open include file: 'jni.h': No such
file or directory
pourtant jni.h existe bien j'ai meme essaye de la copier ss java jdk/include mais c la meme chose
merci
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 26 juil. 2006 à 08:08
salut
merci pour tt twinuts pour m faire parvenir jusqu'a la
j'arrive à voir ma dll mais qd j'execute mon application je trouve un message
Registry key 'Software\JavaSoft\Java Runtime Environment\CurrentVersion'
has value '1.4', but '1.5' is required.
Error: could not find java.dll
Error: could not find Java 2 Runtime Environment.
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 26 juil. 2006 à 09:31
salut
bon ca va j'ai resolu ca mais un autre probleme est survenu
pourtant je suis bien ds mon repertoire d'origine lors de l'execution
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld (wrong nam
e: pro1/HelloWorld)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
s'ilvous plait aidez moi
foulla002
Messages postés47Date d'inscriptionmardi 4 juillet 2006StatutMembreDernière intervention 5 septembre 2006 26 juil. 2006 à 12:10
salut
je recompile encore voici ce que j'obtient
C:\Documents and Settings\fff\jbproject\pro1\src>java -Djava.library.path= .Hel
loWorld.dll pro1.HelloWorld
Exception in thread "main" java.lang.NoClassDefFoundError: /HelloWorld/dll
je vous enprie aidez moi