首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未解析外部符号_IID / _CLSID

未解析外部符号_IID / _CLSID
EN

Stack Overflow用户
提问于 2013-05-09 15:15:38
回答 1查看 8.4K关注 0票数 5

我创建了一个默认的ATL项目与MSVC 2010与一个简单的默认ATL对话框。然后,我将第二个项目添加到解决方案中,名为MyControls,在向导的帮助下创建了。然后我将ATL DHTML控件放置到ATL对话框中。

现在,我想在ATL对话框的OnInitDialog函数中调用ATL的一些方法。为了能够打这样的电话:

代码语言:javascript
复制
CComPtr<IDHTMLControl> ptr;
HRESULT hr = GetDlgControl(IDC_ACTIVEX_CONTROL_DHTML
    , IID_IDHTMLControl, (void**)&ptr);

我包括来自MyControls项目的DHTMLControl.h文件。但是,我得到以下错误:

  • 错误1错误LNK2001:未解析的外部符号_IID_IDHTMLControl
  • 错误2错误LNK2001:未解析的外部符号_LIBID_MyControlsLib
  • 错误3错误LNK2001:未解析的外部符号_CLSID_DHTMLControl
  • 错误4错误LNK2001:未解析的外部符号_IID_IDHTMLControlUI

注意:我似乎不正确地链接MyControls.lib,但是,我将MyControls.lib添加到Linker->Input->Additonal依赖项&在Linker->General->附加库目录中指定了./$(配置)。

有人有主意吗?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-10 07:36:55

问题与您如何将一个项目与另一个项目联系在一起有关。这里缺少一些东西,因为您没有显示代码,这只是一个纯粹的猜测。

在控制项目中,您有一个类型库,在构建时,它还生成文件MyControls_i.hMyControls_i.cMyControls_p.c。我假设,在应用程序项目中,您包含了_i.h文件,该文件将符号声明为外部符号,而没有包含具有实际定义符号的_i.c文件。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16465210

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档