Использование библиотеки по этой ссылке http://www.blog.kslemb.com/doku.php/en/projects/globx/java_hid
Я изменил этот код для отправки данных на устройство HID с использованием передачи прерываний.
public byte SetInReport(byte[] buffer, int buffersize) {
if (HIDHandle.equals(WinBase.INVALID_HANDLE_VALUE)) {
return HID_DEVICE_NOT_OPENED;
}
IntByReference bWritten = new IntByReference();
boolean Status = Kernel32.INSTANCE.WriteFile(HIDHandle, buffer, buffersize, bWritten, null);
if (Status == false) {
debug("Write File: " + getSystemError(Kernel32.INSTANCE.GetLastError()));
//System.out.println("Fail");
return HID_DEVICE_TRANSFER_FAILED;
}
else {
System.out.println("Successful!!!");
//System.out.println("buffer in communication.java = "+buffer[1]);
return HID_DEVICE_SUCCESS;
}
}
Отладка показывает сообщение «Доступ запрещен». Просто интересно, что может быть источником этой проблемы. Любая помощь будет принята с благодарностью. Спасибо!