JNA Referenz zu einem Array übergeben in c++ Library(dll)

Diskutiere JNA Referenz zu einem Array übergeben in c++ Library(dll) im Plattformprogrammierung Bereich.
D

Der_AltMann

Die Funktion in der dll sieht so aus:

C++:
int getInfo (

unsigned int Index,

unsigned int* Mask,

unsigned int* Serial,

unsigned __int64* licInfo);
wichtig ist, dass licInfo ein Array ist mit 4 Elementen.
In Java habe ich die Methode so deklariert:
Java:
int getInfo(int Index, IntByReference Mask,IntByReference Serial,Memory licInfo);
Der methodenaufruf:
Java:
int Index =0;
IntByReference Mask= null;
IntByReference Serial= null;
Memory LicInfo = new Memory(256);   
int status =dll.INSTANCE.getInfo(Index, Mask, Serial,licInfo);
Die dll gibt ein Errorcode zurück, der aussagt, dass die Übergabeparameter falsch sind. Ich bin mir ziemlich sicher, dass es an dem letzten Parameter liegt.
Ich habe auch schon versucht direkt ein long[] zu übergeben oder einen Pointer, allerdings mich wenig erfolg.

Vielen Dank für Hilfe :)
 
mrBrown

mrBrown

Der der zweite und dritte Parameter sind NULL, sicher dass das richtig ist?
 
Zuletzt bearbeitet:
mihe7

mihe7

Java:
Memory LicInfo = new Memory(256); 
int status =dll.INSTANCE.getInfo(Index, Mask, Serial,licInfo);
Als vierter Parameter wird licInfo (Anfangsbuchstabe klein) angegeben, die Variable darüber heißt aber LicInfo (Anfangsbuchstabe groß). Da scheint auch was nicht ganz zu passen.
 
Thema: 

JNA Referenz zu einem Array übergeben in c++ Library(dll)

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben