我创建了一个默认的ATL项目与MSVC 2010与一个简单的默认ATL对话框。然后,我将第二个项目添加到解决方案中,名为MyControls,在向导的帮助下创建了。然后我将ATL DHTML控件放置到ATL对话框中。
现在,我想在ATL对话框的OnInitDialog函数中调用ATL的一些方法。为了能够打这样的电话:
CComPtr<IDHTMLControl> ptr;
HRESULT hr = GetDlgControl(IDC_ACTIVEX_CONTROL_DHTML
, IID_IDHTMLControl, (void**)&ptr);我包括来自MyControls项目的DHTMLControl.h文件。但是,我得到以下错误:
注意:我似乎不正确地链接MyControls.lib,但是,我将MyControls.lib添加到Linker->Input->Additonal依赖项&在Linker->General->附加库目录中指定了./$(配置)。
有人有主意吗?谢谢!
发布于 2013-05-10 07:36:55
问题与您如何将一个项目与另一个项目联系在一起有关。这里缺少一些东西,因为您没有显示代码,这只是一个纯粹的猜测。
在控制项目中,您有一个类型库,在构建时,它还生成文件MyControls_i.h、MyControls_i.c、MyControls_p.c。我假设,在应用程序项目中,您包含了_i.h文件,该文件将符号声明为外部符号,而没有包含具有实际定义符号的_i.c文件。
https://stackoverflow.com/questions/16465210
复制相似问题