Устранение ошибок компоновщика hid.lib "неразрешенный внешний символ" в VC++

Как видно из названия, у меня следующая ошибка компоновщика:

ошибка LNK2019: неразрешенный внешний символ "unsigned char __stdcall HidD_GetAttributes(void *,struct _HIDD_ATTRIBUTES *)" (?HidD_GetAttributes@@YGEPAXPAU_HIDD_ATTRIBUTES@@@Z)

при звонке result = HidD_GetAttributes(WriteHandle, &attributes) в моем коде.

Эта функция должна существовать в "hid.lib", который я добавил в свои зависимости компоновщика для проекта. Я также включил заголовочный файл "hidsdi.h", в котором есть прототип функции для HidD_GetAttributes.

Единственное, что мне показалось проблематичным, - это то, что прототипы функций для "hid.lib" разделены между тремя разными заголовками: hidsdi.h, hidpi.h и hidsage.h.

Какие-либо предложения?

1 ответ

Решение

Просто решил проблему. Очевидно, "hid.lib" был написан на C, что привело к некоторому искажению имени. С помощью

extern "C"
{
    #include "hidsdi.h"
}

все прояснили.

Другие вопросы по тегам