Wie kann ich die Ursache eines Speicherfehlers aufspüren, wenn ich JNA zum Zugriff auf eine native Methode verwendete?
Posted: 19 Aug 2025, 16:45
Aufrufen der nativen Methode, die unten über JNA aufgeführt ist, verursacht einen Ungültigen Speicherzugriffszugriff .
Code: Select all
DLLEXPORT int STDCALL func( const struct someStruct* s, const float someFloat, enum someEnum, struct structOfInterest** soi);
< /code>
So heißt der Methode -Func: < /p>
PointerByReference p = new PointerByReference();
int result = _native.func(s, f, 1, p);
< /code>
Gibt es eine Möglichkeit, weitere Informationen für die Ursache der ungültigen Speicherzugriffsausnahme zu erhalten?int func(someStruct s, float someFloat, int someEnum, PointerByReference p);
< /code>
Der Typ des Somestruct erweitert die Struktur. auch diese Zeile < /p>
einbeziehenclass ByReference extends someStruct implements Structure.ByReference {}