我相對較新使用JNA,並找到JNAerator工具。我認爲這將是一個簡單的方法,但是,我如何生成我的接口和各種文件,我發現很難調試或理解爲什麼它可能無法正常工作。 Windows編程中是不是我的專長,所以用JNA,使生活容易爲自己的嘗試...JNA/Java使用JNAerator和ftd2xx庫
頭文件是在這裏:http://www.ftdichip.com/Support/Knowledgebase/index.html?ftd2xx_h.htm
而且它產生了以下Java JNA文件位置:http://pastebin.com/hpJgSRMk
現在我的示例應用程序只是想列出這些連接的設備,我可以再重複左右和操縱等。
import com.sun.jna.NativeLong;
import ft2xx.Ftd2xxLibrary;
import ft2xx.Ftd2xxLibrary.LPDWORD;
public class Test {
public static void main(String[] args){
LPDWORD lpd = new LPDWORD();
NativeLong nl = Ftd2xxLibrary.INSTANCE.FT_CreateDeviceInfoList(lpd);
System.out.println("Call State: " + nl);
}
}
這下面我在這裏閱讀:http://www.ftdichip.com/Support/Documents/ProgramGuides/D2XX_Programmer's_Guide(FT_000071).pdf其中詳細說明如何列出連接的設備,然後可以迭代周圍等..
所以,我的方法返回一個6,它表示一個無效的參數,但考慮到我自動生成的代碼,它不堆疊,對於如何繼續,我有點無知。
我使用了JNAerator,因爲我需要實現和使用很多方法,並且相信JNA和這樣生成的代碼會很容易爲這個特定目的而工作。
任何線索,還是我應該回到基礎?
我在Windows 7上使用Eclipse(Mars)和JNAerator的webstarted版本。