JavaNative
-
Hallo
Ich habe folgendes Phänomen wenn ich versuche jstring in chars zu konvertieren.
ich habe das beispiel von der Sun-seite genommen und versucht es bei mir einzubinden. aber ich bekomme folgende fehlermeldung:
Codebeispiel
lMsg = (*env)->GetStringUTFChars(env,msg,0);
error C2819: type 'JNIEnv_' does not have an overloaded member 'operator ->'
c:\programme\java\j2sdk1.4.2_04\include\jni.h(750) : see declaration of 'JNIEnv_'
left of '->GetStringUTFChars' must point to class/struct/unionwenn ich es allerdings so einbinde, dann bekomme ich vom compiler (MVisual C++)
keine fehlermeldung. allerdings stürzt das programm, dann in der DLL an dieser stelle ab.lMsg = env->GetStringUTFChars(msg,0);
Woran liegt das, dass ich einen parameter weniger übergeben kann?
-
Servus,
also ich habe zwar selten mit native Methoden in Java zu tun und ich könnte mich mich auch täuschen, aber dass hier:
hi schrieb:
lMsg = (*env)->GetStringUTFChars(env,msg,0);
sieht mir nicht nach korrektem Code aus.
Vielleicht so:
lMsg = env->GetStringUTFChars(env, msg, 0);
-
Yo, entweder env->XXX oder das, was der -> Operator ja auch genau macht: (*env).XXX