2006-09-17

unresolved external symbol _Atl{错误}@【ATL】

对VC非常不熟悉,包含各种各样头文件,连使用哪个都不知道,汗的不得了,今天就遇到一个问题。

为了一个Delphi的项目,想偷懒用VC的ATL来创建DLL调用,用ATL COM AppWizard新建了个DLL工程,使用MinDependency模式编译,结果出现如标题所示错误,百思不得其解,结果Google了一下,才知道少了两头文件:

#include <atlcom.h>
#include <atlhost.h>

还有个_main错误处理方法也很简单:屏蔽StdAfx.cpp中的#include <atlimpl.cpp>就可以了。

另外:VC也挺方便的,如果用 ATL 的话,CComBSTR, CComPtr等都会自动释放,开始还提心挑担的使用IStream*接口,再Release,这下了解了就方便了,嘿嘿!

没有评论: