2012-02-16 259 views
0

我试图建立一个项目(用于ARM),以方便通过HID设备进行通信。下面是我有什么细节:VC++项目:无法解析的外部符号HidD_GetHidGuid

与Windows 7
  • 的Visual Studio
    • PC 2011开发者预览版
    • WDK

    微软库函数FindKnownHidDevices()使得以HidD_GetHidGuid调用( )在我的项目中。然而,链接器不喜欢这一点,并抱怨:

    *错误LNK2019:解析外部符号HidD_GetHidGuid在函数引用“无符号的字符__cdecl FindKnownHidDevices *

    我已经拥有以下解决方法在我的项目没有成功所以远:在Configuratio

    • 包括hid.lib & SetupAPI.lib在链接器 - >输入 - - >下2011 VS的配置管理器的附加Dependencings
    • 包括下hidsdi.h “>包含目录VC++目录” ñ2011 VS经理
    • 包含在.c文件的.H版本,这使得调用函数HidD_GetHidGuid()使用的extern“C”

    什么可能我会丢失hidsdi.h?

  • 回答

    1

    如果代码编译成功,那么编译器会找到正确的头文件。由于链接程序失败,这表明它无法找到指定的.lib文件。

    您是否下载并安装了WoA SDK?所需的lib文件实际上可能不在ARM目标的链接程序文件夹中(它们不在Studio 11 Developer Preview的默认安装中)。