tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
2311
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    eagle1985 eagle1985 ist offline Mitglied Silber
    Registriert seit
    May 2007
    Beiträge
    63
    Hallo zusammen,

    ich habe eine Frage zu Windows DLLs.

    ich möchte in meinem Projekt DLL files laden. Diese befinden sich alle im verzeichnis E:\proj\dll

    wenn ich nun java mittels -Djava.library.path=E:\proj\dll aufrufe, findet er zwar die dlls aber der "Standard"-LibraryPath wird überschrieben.

    Weiss jemand wie ich den neuen Pfad einfach hinzufügen kann oder ich mittels relativer Pfadangabe (vom Run-Verzeichnis aus) die DLLs laden kann?

    greez eagle
     

  2. #2
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.161
    Moin,

    einfach so eine DLL laden und dann irgendwas ausführen geht IMHO nicht.

    Mit loadLibrary kannst du sinnvollerweise ohnehin nur DLLs laden, welche auch JNI-Methoden enthalten (http://java.sun.com/developer/online...CBook/jni.html).

    Gruß
    Klaus
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  3. #3
    jb007 jb007 ist offline Mitglied Bronze
    Registriert seit
    Apr 2007
    Ort
    Westerkappeln
    Beiträge
    43
    Hallo eagle1985,

    versuch doch mal folgendes in Deiner Main Methode:

    String myLibraryPath = "E:\proj\dll";
    String newLibraryPath = System.getProperty("java.library.path") + ";" + myLibraryPath;
    System.setProperty("java.library.path", newLibraryPath);

    Sollte funktionieren falls, wie vfl_freak schon angedeutet hat, die DLL's JNI-Methoden enthalten.
    Aber ich denke mal, das wird wohl der Fall sein....

    Gruß Jens
     

  4. #4
    Avatar von miffi
    miffi miffi ist offline Mitglied Gold
    Registriert seit
    Jul 2009
    Ort
    Ravensburg (BW)
    Beiträge
    139
    Howdie.

    Ein paar mehr Infos wären gut....
    Verwendest du JNI oder JNA?
    Wie lädst du die Bibliothek? Gibt es Dependencies?
    Falls du JNA verwendest, wären die Punkte von meinen Vorrednern beispielsweise irrelevant, auch wenn sie Recht haben.

    Und der Standard-Library-Path wird eigentlich nicht wirklich überschrieben, es handelt sich IMHO um einen temporären Eintrag, der priorisiert wird. In einem meiner JNA-Projekte habe ich den Path überschrieben und konnte trotzdem alle anderen System-Bibliotheken und installierte DLLs verwenden.

    Gruß
    miffi
     
    "A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools."
    Douglas Adams

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 04.11.10, 21:17
  2. Antworten: 1
    Letzter Beitrag: 29.10.09, 14:57
  3. Eclipse Build Path Probleme
    Von Gast im Forum Java
    Antworten: 0
    Letzter Beitrag: 24.07.09, 11:09
  4. Java Application Start Path
    Von Matze82 im Forum Java
    Antworten: 2
    Letzter Beitrag: 12.12.07, 11:57
  5. Java build path auslesen
    Von HermeZ im Forum Java
    Antworten: 2
    Letzter Beitrag: 26.01.06, 13:19