我使用hidapi-jni.dll/hidapi-jni.so
和编写 Java 程序来读取和写入数据到我的设备。我的设备定义为 HID 设备。我的代码在 linux (Debian 7.1) 上运行得很好,我可以从/向设备读取和写入数据。但在 Windows(Windows 7 和 XP)上,我只能读取数据,并且在尝试写入时出现此错误:
java.io.IOException: The parameter is incorrect.
Write 方法的一部分是:
try {
HIDManager hid_mgr = HIDManager.getInstance();
dev = hid_mgr.openById(VENDOR_ID, PRODUCT_ID, null);
byte[] by = new byte[4];
by[0] = (byte) 1;
by[1] = (byte) 2;
by[2] = (byte) 3;
by[3] = (byte) 4;
dev.write(by);
} catch (IOException | NullPointerException ne) {
System.err.println(ne);
}
我该如何解决这个错误?