gpt4 book ai didi

visual-c++ - WDK(Windows 驱动程序工具包)和 VC++ 头文件问题

转载 作者:行者123 更新时间:2023-12-04 23:32:14 26 4
gpt4 key购买 nike

我正在尝试从 USB HID 设备读取,我知道如何使用 DLLImport hid.dll 在 C# 中进行读取,但我想从 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升级?

我非常感谢你的帮助,

谢谢,
卡洛斯

最佳答案

我找到了一个解决方案,不知道为什么这是有效的,但它是!:

在 Visual Studio 中转到:

工具->选项->项目->VC++目录,然后显示目录:包含文件。

添加此文件夹:

C:\WinDDK\7600.16385.1\inc\ddk 和 C:\WinDDK\7600.16385.1\inc\api

现在这是为我解决问题的技巧,我不知道为什么,因为看起来很奇怪,但它是:

C:\WinDDK\7600.16385.1\inc\ddk -> 这个目录必须是列表中的第一个目录!

C:\WinDDK\7600.16385.1\inc\api -> 此目录必须在“$(WindowsSdkDir)\include”之上,但在“$(VCInstallDir)include”之下

例子:

C:\WinDDK\7600.16385.1\inc\ddk
$(VCInstallDir)include
$(VCInstallDir)atlmfc\include
C:\WinDDK\7600.16385.1\inc\api
$(WindowsSdkDir)\include
$(FrameworkSDKDir)include

卡洛斯

关于visual-c++ - WDK(Windows 驱动程序工具包)和 VC++ 头文件问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3337859/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com