Java JNI AttachCurrentThread使jenv为空
我目前正在将JNI功能添加到传统的delphi应用程序中。在单线程环境中,一切正常,但一旦我进入多线程环境,事情就开始变得棘手 我的问题是调用JavaVM^.AttachCurrentThread(JavaVM,@JEnv,nil);返回0,但将JEnv指针置于nil。我不知道为什么jvm.dll应该返回空指针 我有什么遗漏吗 先谢谢你 --该死的 附言:Java JNI AttachCurrentThread使jenv为空,java,delphi,java-native-interface,Java,Delphi,Java Native Interface,我目前正在将JNI功能添加到传统的delphi应用程序中。在单线程环境中,一切正常,但一旦我进入多线程环境,事情就开始变得棘手 我的问题是调用JavaVM^.AttachCurrentThread(JavaVM,@JEnv,nil);返回0,但将JEnv指针置于nil。我不知道为什么jvm.dll应该返回空指针 我有什么遗漏吗 先谢谢你 --该死的 附言: *环境:WinXP+JDK 1.6 *使用来自的JNI.pas,我发现了问题。我传递的是指向TJNIEnv的指针,而不是打包的PJNIEnv
*环境:WinXP+JDK 1.6
*使用来自的JNI.pas,我发现了问题。我传递的是指向TJNIEnv的指针,而不是打包的PJNIEnv。编译器没有进行类型检查,因此失败了