定义了哪个库GUID_DEVINTERFACE_USB_HUB

时间:2018-01-31 17:55:17

标签: winapi visual-studio-2015 usb

此问题涉及:How do I reset USB devices using the Windows API?我使用的是Vistual Studio 2015,项目目标平台为Win10.0.14393.0

我正在尝试使用用户空间解决方案,通过呼叫CM_Reenumerate_DevInst()重新枚举USB HUB设备接口。

我遇到的问题是打电话时 SetupDiGetClassDevs(&GUID_DEVINTERFACE_USB_HUB, NULL, NULL, DIGCF_DEVICEINTERFACE);

我收到此编译错误。

1>UsbDevices.obj : error LNK2001: unresolved external symbol GUID_DEVINTERFACE_USB_HUB
1>C:\DEV\Experiment\MFCApplication1\x64\Debug\MFCApplication1.exe : fatal error LNK1120: 1 unresolved externals

我找不到定义此GUID的库。

1 个答案:

答案 0 :(得分:2)

这未在任何库中实现。所有你需要的东西:

#include <initguid.h>
#include <usbiodef.h>

所以请先 initguid.h usbiodef.h

使用GUID_DEVINTERFACE_USB_HUB宏定义的DEFINE_GUID变量。这个宏在 guiddef.h 中以不同的方式定义 - 取决于INITGUID是否已定义。最后寻找 initguid.h - 这个小文件的作用。