繁体   English   中英

C ++项目中未解析的外部符号

[英]Unresolved external symbols in C++ project

这是我的情况(我是C ++ MFC编码的新手,我正在尝试调试现有的应用程序项目)

我在我的代码中使用这一行(在visual studio 2012 MFC项目中)

CoCreateInstance(CLSID_PortableDeviceValues,NULL,CLSCTX_INPROC_SERVER,IID_PPV_ARGS(&x));

当我运行该项目时,我得到这样的链接器错误

错误LNK2001:未解析的外部符号_CLSID_PortableDeviceValues

对于我在代码中引用的所有CLSID值,都会发生这种情况。 像这样

错误LNK2001:未解析的外部符号_CLSID_PortableDeviceKeyCollection

错误LNK2001:未解析的外部符号_IID_IPortableDeviceEventCallback

错误LNK2001:未解析的外部符号_CLSID_PortableDeviceManager

错误LNK2001:未解析的外部符号_CLSID_PortableDeviceServiceFTM

我检查了“CLSID_PortableDeviceValues”的声明,它在“PortableDeviceTypes.h”中找到,我也导入了该库。

我没有得到任何编译器错误,但遇到上面提到的链接器错误..

有人可以帮帮我吗。 我无法解决这个问题..

您需要将PortableDeviceGUIDs.lib添加到您的项目中。
(在IPDN文档中查找IPortableDeviceValues的 “要求”部分)

当链接器构建项目时,它正在查找标识符CLSID_PortableDeviceValues后面的实现数据。 此数据位于库PortableDeviceGUIDs.lib中,必须告知链接器使用此库。

您在源代码中包含的头文件仅声明符号“CLSID_PortableDeviceValues”,而不导入其实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM