我有出口的函數的格式如下一個.dll庫:如何產生特定的JNI頭
_Java_folder1_folder2_folder3_JavaClassName_javamethodname @ 16
我不能修改該.dll。它給了我。
我需要編寫一個java程序來調用本地javamethodname
。但是,我無法生成正確的頭文件。如何用上面指定的簽名生成頭文件?
我試過javah -jni JavaClassName,但它沒有給我想要的結果。當我打電話JAVAH從目錄層次結構裏面,我得到一個頭,如:
Java_JavaClassName_javamethodname
當我試圖從目錄層次結構之外的電話JAVAH,我得到一個錯誤。
另外,如何獲得Java前面的頭部簽名中的下劃線?那就是:_Java不是Java。
謝謝!
爲什麼?您已經擁有Java類和DLL。這就是你需要的。只需編寫調用Java類的Java代碼即可。 – EJP
是啊,你爲什麼需要標題?你需要的是Java本地類,你應該能夠從任何JAR文件調用DLL中提取它。 –
我設法調用.dll。但是,在那裏似乎有一些軟件保護,它檢查某些變量是否被初始化,以及某些類是否被加載。似乎也有更多的,因爲我不能得到預期的輸出:( – skyknight