Programmieren - alles kontrollieren 4.935 Themen, 20.615 Beiträge

Auf existierende DLL (in C geschrieben) mittels JAVA zugreifen!

DeepThinking / 17 Antworten / Flachansicht Nickles

Hallo, ich möchte auf eine in C geschriebene DLL mittles Java zugreifen. Also die DLL ist -wie gesagt - schon vorhanden; ich will lediglich sie in meinem Java-Programm einbinden, damit ich bestimmte Funktionen aufrufen kann. Ich habe Java Native Interface angeschaut und kann eigene DLL erstellen, die ich dann in Java-Programmen einbinden kann(mit System.loadLibrary). Aber was ist, wenn die DLL schon existiert!?


Konkret: ich habe FRME_GRABBER.DLL (in C geschrieben) und will sie im JAVA-Programm benutzen. z.B. möchte die Funktion long Grab(long fgh, FRAME *frh), was schon in dieser FRAME_GRABBER.DLL implementiert ist, in meinem JAVA-Programm benutzen.

bei Antwort benachrichtigen
Danke viel mals! DeepThinking
Danke viel mals! vergisses
vergisses DeepThinking „Danke! Ich versuche es über Wrapper Funktionen..“
Optionen

Hi DeepThinking,

ich bin übrigens nach wie vor der Meinung, daß es besser und einfacher
wäre, die Funktionalitäten komplett in C zu schreiben.

Ich würde einen C Prozess schreiben, der die Daten dem Java als
Stream zur Verfügung stellt.
Zusätzlich würde ich mit JNI eine kleine DLL schreiben,
die aus Java aufrufbare Funktionen zur Steuerung des C Prozesses
bereitstellt.
Diese DLL könnte mit dem C Prozess über IPC
(z. B. Messages, bitte nicht mit Windows Messages verwechseln oder
named Pipes) oder Netzwerk Sockets kommunizieren.

Gruss, vergisses

bei Antwort benachrichtigen