Oppure

Loading
27/04/11 20:25
hackme
Buonasera a tutto il forum.
Sto studiando da qualche giorno i native method... Allora per capire meglio ho deciso di fare un programma:



public class main {

	 private static native int MessageBox(int hwndOwner, String text,String title, int fuStyle);
	 
	main(){
	
		try{
			System.loadLibrary("kernel32");

		}catch(UnsatisfiedLinkError e){
			System.out.println(e);
		}
	}
	
	public static void main(String[] args) {
	main user32 = new main();
	    
		    user32.MessageBox(0, "", "", 0);
	}

}



Solo che se lo faccio partire mi dice :
Exception in thread "main" java.lang.UnsatisfiedLinkError: main.MessageBox(ILjava/lang/String;Ljava/lang/String;I)I
	at main.MessageBox(Native Method)
	at main.main(main.java:20)



Come faccio???
aaa
27/04/11 22:42
paoloricciuti
Vuol dire che non riesce a trovare il file kernel32!!

1. Facendo in questo modo cerca il file kernel32 nella directory dove è avviato il jar!

2. Per utilizzare JNI la dll la devi aver creata tu ad hoc a partire dall'header generato tramite il programma fornito nella JDK (javah). Non puoi caricare semplicemente una dll!!!
aaa