wczytywanie dll z jara
Artur N - 09-12-2005 19:58
wczytywanie dll z jara
Witam. Moze ktos wie... Jak wczytac dll'ke c++ z jara? chodzi mi o cos na sposob a`la System.loadLibrary()... bowiem jest sobie aplecik java webstart i wymaga akurat tej dllki, ktora umiescilem w jarze. Czy ktos ma pomysl, jak cos takiego wczytac? Dzieki z gory za odpowiedzi.
Artur
Klaudiusz Kulik - 09-12-2005 19:58
05.12.2005 Artur N pisze: > Witam. Moze ktos wie... > Jak wczytac dll'ke c++ z jara? chodzi mi o cos na sposob a`la > System.loadLibrary()... bowiem jest sobie aplecik java webstart i wymaga > akurat tej dllki, ktora umiescilem w jarze. Czy ktos ma pomysl, jak cos > takiego wczytac? Dzieki z gory za odpowiedzi.
/** * Ładuje bibliotekę ( .dll, .so ) z jara. * @param name ścieżka do zasobu w jarze np. /resources/foo.dll * @return true jeśli się powiodło */ public static boolean loadLibrary(String name) { try {
InputStream inputStream = Sys.class.getResource(name).openStream(); // Usunięcie / z nazwy ścieżki name = name.substring(name.lastIndexOf("/"),name.length());
// pełna scieżka do pliku, łącznie z katalogiem tymaczasowym File dllFile = new File(System.getProperty("java.io.tmpdir") + name); // Jeśli plik nie istnieje, to stworzyć i zapisać zawartość if (!dllFile.exists()) { FileOutputStream outputStream = new FileOutputStream(dllFile); byte[] array = new byte[8192]; for (int i = inputStream.read(array); i != -1; i = inputStream.read(array)) { outputStream.write(array, 0, i); } outputStream.close(); }
System.load(dllFile.getPath()); return true;
} catch (Throwable e) { e.printStackTrace(); // System.err.println(name + " library not loaded."); return false; } }
Metoda zapisuje dll do katalogu tymczasowego, a następnie stamtąd go ładuje. Należy wiec zapewnić (sprawdzać, ustawiać) prawa dostępu do tego katalogu i pozwalać na ładowanie z niego bibliotek.
-- K.
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[MySQL] - wersja biblioteki libmysql.dll
Firebird - biblioteka fbclient.dll
Wolanie funkcji z dll-a napisanego w C++
Wczytywanie bazy do pamieci
VFP9 wczytywanie XML
pomocy jak?
Primary i Foreign key w PostgreSQL
LCD dla grafika ... było tysiąc razy :-)
mysql, cudzyslow i zapytanie
[Wymiana] Wymienie się z każdym linkiem
zanotowane.pldoc.pisz.plpdf.pisz.plsulimczyk.pev.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|