我相对较新使用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版本。