我正在尝试从 USB HID 设备中读取数据,我知道如何在 C# 中使用 DLLImport hid.dll 进行读取,但我想从 C++ 中读取,这样我就不必声明所有结构等,并且只包含头文件。
所以我下载了WDK,然后在包含头文件和链接库时遇到很多错误:
#include <windows.h>
extern "C" {
#include <hidsdi.h>
}
int main(){
}
错误(163 个中的 6 个):
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
好的,所以我在某处读到我也必须升级 Windows SDK,我有 Microsoft Windows SDK v6.0A,我下载并安装了 Windows SDK v7.0。但是看起来我现在有两个 SDK?我如何在 Visual Studio 中正确进行 SDK 升级?
非常感谢您的帮助,
谢谢,卡洛斯