C++ CTime in DLL an Java jobject übergeben



  • Hallo,

    ich habe eine DLL die mir im C++ Teil eine CTime zurückgibt.

    Um die DLL aus meiner Java Application zu starten schaut das so aus:

    JNIEXPORT jobject JNICALL 
    Java_com_siemens_ui_viewer_web_HTMLCache_getTimeStamp(JNIEnv *env, 
    jobject obj, 
    jstring jfn) 
    { 
    const char* fn = env->GetStringUTFChars(jfn, 0 ); 
    
    const jclass date_class = env->FindClass("java/util/Date"); 
    jmethodID getHourId = env->GetMethodID(date_class, "getHour", "(I)V"); 
    jmethodID getMinuteId = env->GetMethodID(date_class, "getMinute", "(I)V"); 
    jmethodID getSecondId = env->GetMethodID(date_class, "getSecond", "(I)V"); 
    jobject jversionDate = env->AllocObject(date_class); 
    
    env->CallVoidMethod(jversionDate, getHourId, GetLastModifiedTime(fn).GetHour()); 
    env->CallVoidMethod(jversionDate, getMinuteId, GetLastModifiedTime(fn).GetMinute()); 
    env->CallVoidMethod(jversionDate, getSecondId, GetLastModifiedTime(fn).GetSecond());
    

    .....

    jetzt muss ich irgendwie die funktion aufrufen die mein CTime zurückgibt, in der Art

    CTime lastModified = GetLastModifiedTime(fn);
    

    wie geb ich denn jetzt das lastModified als jobject zurück ?


Anmelden zum Antworten