public class MojaKlasa extends Applet
{
static {System.loadLibrary("MyLibrary");}
public native void paint(Graphics g);
public void main( String[] argv )
{
Frame frame = new Frame();
Applet applet = new MojaKlasa();
frame.setSize(650,440);
frame.setLayout(new BorderLayout());
frame.add(applet);
frame.setVisible(true);
}
}
jak widac moja dll-ka wczytywana jest na samym poczatku i jest z nia powiazana
metoda paint, ktora istnieje wewnatrz niej i rysuje. Przyznam sie szczerze ze
wolalbym zeby ta biblioteka wczytywala sie wtedy kiedy ja chce i zeby to bylo w
main. Np zeby przed tym jak sie wczyta mogl cos pokazac na applecie i dopiero
pozniej wczytac ta biblioteke i od tego czasu metoda paint bylaby zwiazana z
bibioteka. Ale jezeli nie da sie to trudno. Przepraszam, bo moze cos zle pisze
ale potrzebuje napisac cos takiego w javie i nie mam duzego doswiadczenia, a JNI
to nie taka prosta sprawa. Dziekuje za jakiegolwiek wskazowki!
pozdrawiam
--
Wys�ano z serwisu OnetNiusy: http://niusy.onet.pl
Zdaje mi sie, ze nie ma innej metody, niz wypakowac dll z jara (jar to
zip tak na prawde) do katalogu np tmp i stamtad zalagowac.
Bartek
Czy wogole mozna ladowac biblioteki dll z poziomu appletow?
Java Web Start ma wsparcie dla JNI.
> Przyznam sie szczerze ze wolalbym zeby ta biblioteka wczytywala sie wtedy
> kiedy ja chce i zeby to bylo w main. Np zeby przed tym jak sie wczyta
> mogl cos pokazac na applecie i dopiero pozniej wczytac ta biblioteke i od
> tego czasu metoda paint bylaby zwiazana z bibioteka.
Ale skoro tak bys wolal zrobic, to dlaczego tak nie robisz?
Pozdrawiam
Brzezi
Czemu tak uwazasz?
Faktycznie w tym przypadku dość bezsensownie zasugerowałem,że "nie
można", gdy tymczasem bardziej myślałem o tym, że "u mnie nie działają
dll bo mam chyba so, ale i tak to pewnie nie zadziała". Dziękuje, że
zwróciłeś mi uwagę - nie powinienem tak napisać, tylko rozszerzyć i
przeredagować to zdanie. Swoją drogą jak ciężko jest napisać tak dobre
JNI, aby działało na wszystkich platformach na jakich jest java i
przeglądarka.
Właśnie niebezpiecznie zbliżyłem się do tematu OS - tym razem nie chcę
dyskutować o tym, że istnieją inne platformy niż Jedyna Słuszna ze
swoimi dll-ami.