您的位置:首页 > 其它

关于VC7 ATL ActiveX控件的属性化选项的Bug

2005-07-16 07:51 288 查看
用VS2003做ATL ActiveX开发,遇到以下问题。
步骤:
1、利用VC7的“ATL 项目”向导建立的ActiveX工程,(注意:“属性化”选项默认是选中的,保持不变)
2、在工程中添加“ATL 控件”
3、给已添加的ATL 控件添加一个BSTR类型的属性
4、编译控件
5、Debug控件,在调用控件的BSTR属性时出错,跟踪后错误断点出现在atlcom.h文件的
//If InternalAddRef or InternalRelease is undefined then your class
//doesn't derive from CComObjectRoot
STDMETHOD_(ULONG, AddRef)() {return InternalAddRef();}
STDMETHOD_(ULONG, Release)()
{
ULONG l = InternalRelease();
if (l == 0)
delete this;
return l;
}
方法处。

解决办法:
用“ATL 项目”向导建立ActiveX工程时,去掉工程的“属性化”选项即可。这应该是VC7的Bug
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: