crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

Гость_Andiuxa_*
сообщение 23.8.2013, 12:47
Сообщение #1





Гости








    


Привет всем. Собственно сабж. Насколько реально такое преобразование.
Поясню.

Libusb.h:
...
struct libusb_device_handle;
...
typedef struct libusb_device_handle libusb_device_handle;
...


Описания структуры в этом файле нет.

Далее Types.h:
...
typedef void *HANDLE;
typedef HANDLE *LPHANDLE;
...



Как быть или я идиот? :p
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Гость_Andriuxa_*
сообщение 26.8.2013, 14:56
Сообщение #2





Гости








    


Благодарю за объяснение.
Вот только библиотека кривая какая-то.
CP210x_GetNumDevices() - возвращает количество устройств
...
DWORD NumDev;
...
cpstatus = CP210x_GetNumDevices(&NumDev);
qDebug() << cpstatus << " " << NumDev;


Prototype: CP210x_STATUS CP210x_GetNumDevices( LPDWORD NumDevices )


Однако теперь другая проблема. Судя, по ману, после GetNumDevices, я должен вызвать CP210x_GetProductString. Но при вызове у меня все дохнет (core dumped). В чем дело, я понять не могу.

...
DWORD GetNumDev;
LPVOID DevStr;
DWORD options;
...
cpstatus = CP210x_GetProductString(GetNumDev, &DevStr, options);


Prototype: CP210x_STATUS CP210x_GetProductString( DWORD DeviceNum, LPVOID DeviceString, DWORD Options )


Для чего вообще создавать указательного типа на void, я понять не могу.

CP210x_STATUS CP210x_GetProductString(
        DWORD dwDeviceNum,
        LPVOID lpvDeviceString,
        DWORD dwFlags
        ) {
    //TODO - fill out all flagged strings
    HANDLE h;
    if (CP210x_Open(dwDeviceNum, &h) == CP210x_SUCCESS) {
        BYTE length;
        return CP210x_GetDeviceSerialNumber(h, lpvDeviceString, &length, true);
    }
    
    return CP210x_DEVICE_NOT_FOUND;
}


Судя по отладчику, валится на if (CP210x_Open(dwDeviceNum, &h) == CP210x_SUCCESS).
Я понимаю, что по логике, оно должно вернуть CP210x_DEVICE_NOT_FOUND, но этого не происходит.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 18.7.2025, 10:53