LINUX.ORG.RU

Qt:: Подключение и использование HIDAPI библиотеки для работы с USB

 


0

1

Всем привет!!) Cкачал и установил библиотеку «hidapi-0.7.0.zip» по этой ссылке https://github.com/signal11/hidapi/downloads

т.е. скопировал папки «linux, windows, mac, hidapi» в свой проект, прописал к ним путь в .pro файле

macx:  SOURCES += mac/hid.c
unix: !macx:  SOURCES += linux/hid-libusb.c
win32: SOURCES += windows/hid.c
macx: LIBS += -framework CoreFoundation -framework IOkit
unix: !macx: LIBS += -lusb-1.0
win32: LIBS += -lSetupAPI

соответственно, прописал

#include <hidapi/hidapi.h>

Далее делаю все как батюшка прописал: отсюда: http://microsin.net/programming/pc/multi-platform-hid-api.html

Начиная со строчки:

res = hid_get_manufacturer_string(handle, wstr, MAX_STR);

программа виснет к ядреной бабушке и закрывается с кодом -1

Я в недоумении, что я такого сделал или не сделал, чтобы она так поступала... Подскажите, пожалуйста

Qt версия Qt 5.10.1


Ответ на: комментарий от RazrFalcon

А чем эта не приглянулась? Она с githab. По словам очевидцев, на ней предки, если можно так их назвать, китайские стены возводили) эти версии коммитились минимум год назад, вроде как

Tumyq
() автор топика
Ответ на: комментарий от RazrFalcon

В общем-то вопрос решен, ошибка найдена. Нужно было вникнуть в суть прежде, чем начинать дергать все подряд из API.

Прога виснет, потому что подразумевается, что далее я использую уже известные мне данные о конкретном устройстве, т.е. в принимающие далее функции пишутся вендоры и пиды заранее известные.

Я почему-то подумал, что все функции идут по очереди, вместе с извлечением и использованием этих данных об устройстве.

Tumyq
() автор топика
Ответ на: комментарий от Tumyq

в итоге, считываю вендор и пид, открываю нужный хид, но не работает отправка команды, т.е.

res = hid_write(handle, buf, 65);

Что только не перепробовал, на этом месте функция возвращает ошибку -1. Грусть-печаль.. help...sos

Tumyq
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.