«Отказано в доступе» при записи прерывания в реализации JNA связи USB HID - PullRequest
0 голосов
/ 28 марта 2012

Использование библиотеки по этой ссылке 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;
        }

        }

Отладка показывает сообщение «Доступ запрещен». Просто интересно, что может быть источником этой проблемы. Любая помощь будет принята с благодарностью. Спасибо!

...