winapi - 错误 LNK2001 : unresolved external symbol _CLSID_XYS

标签 winapi visual-c++ com

microsoft sdk 中定义了一个 idl 文件,在 VS2005 中不可用。我正在使用该 IDL 中的一些接口(interface)。

现在这在 VS 2010 上运行良好。我想让它在VS2005上编译。

我将头文件复制到我的项目目录中。但它给了我编译错误。

当我查看头文件时,类 ID 在其中定义为
EXTERN_C 常量 CLSID CLSID_Xyz。

现在它被定义为 extern 所以这意味着它应该在代码的其他地方声明。

所以我的问题只是包含 .h 文件就足够了,还是我还需要包含 _i.c 文件。

有什么建议么

最佳答案

一旦你检查了那个 _i.c 文件,你会看到确实在那里定义了 CLSID 常量。所以是的,您需要将该 .c 文件合并到您的程序中 - 通过#include 将其合并到 .c 或 .cpp 文件中,或者只是将其添加到您的项目中,以便它单独编译,然后链接到最终的二进制文件中。

关于winapi - 错误 LNK2001 : unresolved external symbol _CLSID_XYS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4283006/

相关文章:

c# - AxAcroPDF吞键,如何让它停止?

.net - COM 库的属性/方法描述

visual-c++ - 在 VC++ 6 中创建新的连接点?

c++ - 在 Windows 中重新启动进程 [exe]

windows - 在 Windows 上,如何防止注册表项被修改?

c++ - Win32C++编辑框下一行问题

c - Visual C 多线程文件读取

c++ - 如何知道 Visual C++ 2010 中单选按钮的可用属性?

windows - 使用 windows com 端口发送中断字节

c# - 线程上的 CheckPixelColor