dll einbinden

Status
Nicht offen für weitere Antworten.
M

MatheStein

Gast
hey leute,

wie bindet man eigentlich in java eine dll ein und greift auf dessen funktionen zu (zB kernel32.dll etc der win-api)?


gruß :)
 

SegFault

Bekanntes Mitglied
Prinzipiell gar nicht, damit würde die Platfromunabhängigkeit von Java Flöten gehen. Du kannst aber über JNI C++ code schreiben der auf die Bibliotheken zugreift und die ergebnise an Java zurück liefert.
JNI gibts wohl einiges im Netz.
 
M

MatheStein

Gast
vielen dank schonmal :) hatte das jetzt gar nicht bedacht..

so gesehen ist es also in reinem java nur möglich funktionen/methoden aus der java-api zu schreiben und sonst keine anderen oder?

gruß
 
M

MatheStein

Gast
vielen dank :)

ich hab mir mal JNI bei wiki angeguckt Java Native Interface ? Wikipedia und verstehe da leider eine kleinigkeit nicht.
in dem abschnitt "java ruft native auf" steht unter anderem folgendes geschrieben:

"Das Javaprogramm wird übersetzt und anschließend mit dem Softwarewerkzeug javah eine Headerdatei erstellt, die die Funktionsdeklaration vorgibt. Mit dieser Headerdatei kann dann die native Programmbibliothek erstellt werden."

leider verstehe ich das nicht so ganz.
java ruft die dll auf und nutzt eine methode aus dieser (die denke ich mal direkt auf dem rechner läuft und nicht auf der jvm).
wofür braucht man dann einen header und welche programmbibliothek wird erstellt? ich nutze in diesem fall doch eine bib und will keine erstellen oder?


gruß
 
M

MatheStein

Gast
ich habs glaub ich schon verstanden.
das ganze beschreibt die einbidung von c code der noch nicht als lib vorliegt.

weiß einer von euch wie man schon vorhandene in C geschriebene libs in Java einbinden kann?

gruß
 
G

Gastredner

Gast
weiß einer von euch wie man schon vorhandene in C geschriebene libs in Java einbinden kann?
Über JNA.
Alternativ ginge es auch über JNI: Du erstellst eine Java-Klasse, die die von dir benötigten Methoden der nativen Bibliothek über native Methoden enthält - in der C-Implementierung dieser Klasse leitest du die Aufrufe dann an die entsprechenden Bibliotheksfunktionen weiter.
Hast du schon einmal etwas mit C gemacht? Wenn nicht: Lies vielleicht erst ein oder zwei Dinge darüber, besonders über Header- und Source-Dateien. Hilfreich könnte auch der Abschnitt zu JNI in der Insel sein:
Galileo Computing :: Java ist auch eine Insel (8. Auflage) – 27 Java Native Interface (JNI)
 
M

MatheStein

Gast
hey

ja kenne mich mehr oder minder mit C aus und deinen ansatz verstehe ich auch, nur was ist wenn ich schon eine fertige .c datei habe und aus meinem java programm auf die funktionen der .c datei zugreifen möchte ohne alle funktionsköpfe etc umzubennenen oder anders:

angenommen ich hab 2 klassen in einem java programm die beide die selbe native methode enthalten. über deinen ansatz würde ich über javah 2 verschiedene header bekommen dessen darin deklarierte funktionen ich implementieren müsste (und das für jeden header einmal), obwohl es eigentlich die selbe funktion ist (also das selbe tun soll). kann man diese redundanz nicht vermeiden?

gruß
 
G

Gastredner

Gast
Wie gesagt: Direkten Zugriff gibt es - womöglich - über JNA. Alternativ gibt es JNI. Mehr nicht.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Nicht ausführbares JAR, externe jars mit einbinden Java Basics - Anfänger-Themen 7
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
B VISA.jar in Projekt einbinden (Library) Java Basics - Anfänger-Themen 5
G In ein java Dokument Ton einbinden Java Basics - Anfänger-Themen 1
Pinhg Sound in Greenfoot Code einbinden Java Basics - Anfänger-Themen 2
M OKHttpClient einbinden Java Basics - Anfänger-Themen 3
C externe jar einbinden in Eclipse-Projekt Java Basics - Anfänger-Themen 2
C Java Funktion: externe Daten vom Internet einbinden Java Basics - Anfänger-Themen 2
SpigBin Sound einbinden bei Funktionsaufruf Java Basics - Anfänger-Themen 4
M JAVA Programm in Website einbinden Java Basics - Anfänger-Themen 19
C External Jar einbinden bei Maven Java Basics - Anfänger-Themen 9
B tar.gz in Eclipse als Bibliothek einbinden Java Basics - Anfänger-Themen 3
C Einbinden von Komponenten mit Maven Java Basics - Anfänger-Themen 3
TimoN11 Java Klassen Global einbinden Java Basics - Anfänger-Themen 1
J Module richtig einbinden Java Basics - Anfänger-Themen 2
G eigene Bibliothek einbinden Java Basics - Anfänger-Themen 1
G Einbinden von Bildern in ausführbare Jar-Datei Java Basics - Anfänger-Themen 25
Trèfle EXCEL-File Laufwerkunabhängig einbinden. Java Basics - Anfänger-Themen 1
G persistence.xml in ausführbare jar einbinden Java Basics - Anfänger-Themen 11
D Java Programm mit JavaScript einbinden Java Basics - Anfänger-Themen 8
J ShortCut erstellen aber wie die dll einbinden Java Basics - Anfänger-Themen 3
K Erstes kleines Spieleprojekt - Java GUI in HTML einbinden Java Basics - Anfänger-Themen 3
R Grafik in CSV einbinden Java Basics - Anfänger-Themen 2
CptK Erste Schritte Sound-Datei einbinden Java Basics - Anfänger-Themen 2
E HTML in Java einbinden oder JavaScript? Java Basics - Anfänger-Themen 5
U Mehrfach verwendete Sub-Klassen richtig einbinden Java Basics - Anfänger-Themen 4
J If Anweisung in Schleife einbinden Java Basics - Anfänger-Themen 7
F PDF Datei in Java einbinden Java Basics - Anfänger-Themen 22
Hijo2006 Neue externe Klasse einbinden Java Basics - Anfänger-Themen 13
F Klassen Fremde Klasse in GUI einbinden ? Java Basics - Anfänger-Themen 3
B Exception richtig einbinden Java Basics - Anfänger-Themen 1
S Klassen Externe Klasse in ein Projekt mit einbinden Java Basics - Anfänger-Themen 7
A JavaScript Object Notation einbinden mittels Maven Java Basics - Anfänger-Themen 7
S Classpath: Alle .jars innerhalb eines Ordners einbinden Java Basics - Anfänger-Themen 4
1 Im Java Projekt eine txt datei einbinden? Java Basics - Anfänger-Themen 8
S Konsole Lanterna in NetBeans einbinden Java Basics - Anfänger-Themen 5
A Compiler-Fehler Problem beim einbinden der applet Klasse Java Basics - Anfänger-Themen 2
G Applet in ein JSP einbinden Java Basics - Anfänger-Themen 1
Sogomn Einbinden eines Applets Java Basics - Anfänger-Themen 5
M Externe .jar in Sublime einbinden Java Basics - Anfänger-Themen 5
O Eclipse Bibliothek standardmäßig einbinden Java Basics - Anfänger-Themen 5
K JAR Dateien einbinden - funkt nicht wie es sollte... Java Basics - Anfänger-Themen 22
J Klasse einbinden Java Basics - Anfänger-Themen 2
M Java-Applet: Bild einbinden (getImage) Java Basics - Anfänger-Themen 0
S Variablen Rechenzeichen als Variablen in Rechnung einbinden Java Basics - Anfänger-Themen 4
I iCal und auf Homepage einbinden - Prinzip Java Basics - Anfänger-Themen 2
F JAR als bibliothek einbinden Java Basics - Anfänger-Themen 1
E Berechnung für Shop einbinden Java Basics - Anfänger-Themen 8
B jar richtig in libraryslibraries einbinden Java Basics - Anfänger-Themen 4
F Classpath Dateien einbinden und Classpath durchsuchen Java Basics - Anfänger-Themen 2
S Einbinden einer Klasse in die Gui Java Basics - Anfänger-Themen 4
I jar-Datei in HTML einbinden Java Basics - Anfänger-Themen 6
M Einbinden eines youtube-videos in Eclipse Java Basics - Anfänger-Themen 10
U ShareButton für LinkedIn einbinden Java Basics - Anfänger-Themen 2
M Bild einbinden Java Basics - Anfänger-Themen 7
T Java Main aus Subversion aufrufen / Hook einbinden Java Basics - Anfänger-Themen 2
A Applet mit Object-Tags einbinden. Java Basics - Anfänger-Themen 3
G Erste Schritte Native DLL (NativeBass.dll) einbinden (eclipse) Java Basics - Anfänger-Themen 2
B ICO Library über Eclipse einbinden Java Basics - Anfänger-Themen 2
M externe JARs in die eigene JAR einbinden Java Basics - Anfänger-Themen 9
B OOP If und else in Main class einbinden Java Basics - Anfänger-Themen 9
A Webseite in Programm einbinden Java Basics - Anfänger-Themen 5
K Wie jdom einbinden Java Basics - Anfänger-Themen 7
T Classpath Klassen einbinden netbeans Java Basics - Anfänger-Themen 5
D Schleifen einbinden Java Basics - Anfänger-Themen 4
E Bild OS-unabhängig einbinden mit URL Java Basics - Anfänger-Themen 4
A BufferedImage in Android einbinden - Bild spiegeln -wie? Java Basics - Anfänger-Themen 4
C Java in HTML einbinden Java Basics - Anfänger-Themen 2
R Klasse einbinden Java Basics - Anfänger-Themen 8
A JApplet: einbinden von weiteren Jars macht Probleme Java Basics - Anfänger-Themen 2
E apache-commons-net einbinden. Java Basics - Anfänger-Themen 18
S Bibliothek in Eclipse einbinden Java Basics - Anfänger-Themen 2
E Konsolenprogramm in Webseite einbinden Java Basics - Anfänger-Themen 4
N Klassen externe .class einbinden Java Basics - Anfänger-Themen 9
S Interface JNI Interface in Projekt einbinden? Java Basics - Anfänger-Themen 9
S UbuntuTerminal-Kommandos einbinden? Java Basics - Anfänger-Themen 5
S Classpath Externes Package einbinden (zip-Datei) Java Basics - Anfänger-Themen 9
L Referenced Libraries korrekt in Java Applet einbinden.. Java Basics - Anfänger-Themen 2
J [JAVA] Bild in jar einbinden (Hintergrundbild)? Java Basics - Anfänger-Themen 8
P OOP JXDatePicker einbinden Java Basics - Anfänger-Themen 5
X Klassen Klassen in Projekte einbinden mit Eclipse Java Basics - Anfänger-Themen 6
E Browser in Java App einbinden? Java Basics - Anfänger-Themen 3
K Klassen externe JAR in Programm einbinden Java Basics - Anfänger-Themen 5
H jar datei einbinden Java Basics - Anfänger-Themen 17
L Klassen JAVA Klasse in JSP einbinden Java Basics - Anfänger-Themen 4
S Input/Output audio in Programm einbinden Java Basics - Anfänger-Themen 17
Y Bild mit poi in PPT einbinden - geht nicht Java Basics - Anfänger-Themen 4
D Libarie und Javadoc in Netbeans einbinden? Java Basics - Anfänger-Themen 6
F Text in Spiel einbinden Java Basics - Anfänger-Themen 17
J class Datei einbinden Java Basics - Anfänger-Themen 5
B fremde klasse in eclipse projekt einbinden Java Basics - Anfänger-Themen 8
F Dateien in jar einbinden Java Basics - Anfänger-Themen 14
C class Dateien einbinden Java Basics - Anfänger-Themen 22
C Package einbinden - "cannot access" Java Basics - Anfänger-Themen 5
H Panels in Frame einbinden Java Basics - Anfänger-Themen 3
I HUMath Bibliothek einbinden?! Java Basics - Anfänger-Themen 4
C Website in *.java einbinden?? Java Basics - Anfänger-Themen 5
A wav Datei einbinden Java Basics - Anfänger-Themen 2
A OpenOffice Base in Java einbinden Java Basics - Anfänger-Themen 3
Weltall 7 Applet in HTML einbinden Java Basics - Anfänger-Themen 3

Ähnliche Java Themen


Oben