Я пытаюсь читать с USB-устройства HID, я знаю, как это сделать на C#, используя DLLImport hid.dll, но я хочу сделать это с C++, таким образом Мне не нужно объявлять все структуры и т. Д., И просто включать файлы заголовков.WDK (Windows Driver Kit) и проблема с заголовками VC++
Так что я скачал WDK, а затем, когда в том числе файлы заголовков и ссылок библиотеки я получаю много ошибок:
#include <windows.h>
extern "C" {
#include <hidsdi.h>
}
int main(){
}
ошибки (6 из 163):
Error 1 error C2065: 'PASSIVE_LEVEL' : undeclared identifier c:\winddk\7600.16385.1\inc\api\hidpi.h 302 driver
Error 2 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
Error 3 error C2146: syntax error : missing ';' before identifier 'NTSTATUS' c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
Error 4 error C2143: syntax error : missing ';' before '__stdcall' c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
Error 5 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
Error 6 error C2377: 'NTSTATUS' : redefinition; typedef cannot be overloaded with any other symbol c:\winddk\7600.16385.1\inc\api\hidpi.h 303 driver
ОК, поэтому я где-то читал, что мне нужно обновить SDK Windows, у меня был Microsoft Windows SDK v6.0A, я загрузил и установил Windows SDK v7.0. Но потом, похоже, у меня есть два SDK сейчас? Как я правильно делаю обновление SDK в визуальной студии?
Я очень ценю вашу помощь,
Спасибо, Carlos
проблема заключается в том, что WDK и SDK содержат различные файлы заголовков, так что вы должны заставить заголовки WDK быть включены первым, для заголовка WDK включает. – Christopher
Помните ли вы, что вы использовали для lib? Поскольку он не связывает функцию, которую я вызываю из WDK. Я добавил lib \ win7 \ i386 \ из WDK, но, по-видимому, не работает –
Спасибо, миллиард, тоже решил мою проблему;) – Breeze