برنامه ای را به زبان جاوا با استفاده از hidapi-jni برای ارتباط با یک سخت افزار که به صورت HID تعریف شده است نوشتم. با این برنامه در هر دو پلتفرم ویندوز و لینوکس میتوانم به سخت افزار مربوطه به خوبی متصل شده و اطلاعات ارسال شده از سخت افزار به سیستم را دریافت میکنم. مشکل اینجاست که در لینوکس اطلاعات ارسالی از سیستم به سخت افزار توسط سخت افزار دریافت شده و هنگامیکه همان کد در ویندوز اجرا شده و همان اطلاعات فرستاده میشود خطای
java.io.IOException: The parameter is incorrect
را دریافت میکنم.
try {
System.err.println("Go to write ...");
byte[] by = new byte[5];
by[0] = (byte) 0x01;
by[1] = (byte) 0x01;
by[2] = (byte) 0x02;
by[3] = (byte) 0x03;
by[4] = (byte) 0x04;
System.err.println("Try to write ...");
dev.write(by);
System.err.println("Write finished ...");
} catch (IOException | NullPointerException ne) {
System.err.println(ne);
}