Pan*_*sis 2 c++ linker visual-studio-2005
使用PKEY_Device_FriendlyName时,出现以下错误:
Error 1 error LNK2001: unresolved external symbol _PKEY_Device_FriendlyName DefaultAudioDeviceCPP.obj
Error 2 fatal error LNK1120: 1 unresolved externals C:\Users\srobertson\Documents\Visual Studio 2005\Projects\DefaultAudioDeviceCPP\Debug\DefaultAudioDeviceCPP.exe
Run Code Online (Sandbox Code Playgroud)
清除这些错误的最简单方法是什么?我包括functiondiscovery.h和functiondiscoverykeys.h。此外,“项目”->“属性...”->“配置属性”->“ C / C ++”->“常规”->“附加包含目录”中的路径也是正确的。
编辑:有趣的一件事是该错误提到:_PKEY_Device_FriendlyName,而不是PKEY_Device_FriendlyName。但是我只在程序中使用后者。
旧帖子,但希望此答案可以节省一些时间。
我在DEVPKEY属性上遇到了同样的问题-例如DEVPKEY_Device_FriendlyName。我有一个非常相似的链接错误。我在这里的评论中偶然发现了答案: 引用GUID
基本上,在诸如devpkey.h之类的定义属性键的内容的包含之前添加#include。
因此,在我的文件的顶部,我有:
#include <setupapi.h>
#include <initguid.h> // Put this in to get rid of linker errors.
#include <devpkey.h> // Property keys defined here are now defined inline.
Run Code Online (Sandbox Code Playgroud)