2013-01-12 64 views
0

我有用C++編寫的頭文件(無源代碼可用)的.dll庫。這個庫使用了一些其他的.dll文件 - 我也有。我的任務是使用來自Java的這個庫(調用方法並接收結果)。從Java調用dll(C++庫)方法

我發現爲此可以使用JNAerator。什麼算法將是?我試圖java -jar jnaerator.jar MyLib.dll MyLibHeader.h命令,但它輸出

ERROR: JNAeration failed ! 

    Missing output mode parameter -mode ! 
    Please use -h for help on the command-line options available. 

如何使用-h求助?我需要哪種模式?在示例命令中只有一個dll,但我想使用它們中的三個,因爲它們彼此依賴。

可能是我的任務更適合的工具嗎? (一些教程將不勝感激)。謝謝。

回答

3

您需要在命令行中指定-mode參數。 他們Google Code頁有這樣一段話:

- 模式[模式: '罐':JAR綁定的唯一| 'StandaloneJar':具有綁定和運行時依賴關係的JAR | '目錄':簡單文件層次結構中的綁定源'Maven':Maven項目中的綁定源已準備好構建| 「AutoGeneratedMaven」:Maven的項目,自動重新綁定它>]

比方說,你用「StandaloneJar」,那麼你的命令行是: java -jar jnaerator.jar -mode StandaloneJar MyLibHeader.h MyLib.dll

我希望它能起作用,因爲我對JNAenerator沒有任何經驗!