error LNK2001: unresolved external symbol _IID_

error LNK2001: unresolved external symbol _IID_IVdsServiceLoader
error LNK2001: unresolved external symbol _IID_IVdsAdvancedDisk
error LNK2001: unresolved external symbol _IID_IVdsSwProvider
error LNK2001: unresolved external symbol _IID_IVdsDisk
error LNK2001: unresolved external symbol _IID_IVdsPack
 

64位下加:

Uuid.lib rpcrt4.lib(有uuid转换函数则需要包含rpcrt4.lib)

在自己的cpp文件中,vds之上要加包含InitGuid.h  原因是initGuid中包含了 "#define INITGUID
#include ", 而guiddef中定义了IID。

 

#include

#include

64位下,不加库会提示:

unresolved external symbol IID_IVdsServiceLoader (注意前面没有下划线)

32位下,按以上做了,还是编译报错为:

unresolved external symbol _IID_IVdsServiceLoader (注意前面有下划线,这是由编译器加上的,代码中是没有的)

临时解决方法:将代码中的IID_IVdsServiceLoader  替换为 __uuidof(IVdsServiceLoader)

 

 

你可能感兴趣的:(error LNK2001: unresolved external symbol _IID_)