Chinaunix首页 | 论坛 | 博客
  • 博客访问: 245134
  • 博文数量: 27
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 410
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-10 13:39
文章分类

全部博文(27)

文章存档

2010年(17)

2009年(2)

2008年(8)

我的朋友
最近访客

分类: C/C++

2009-05-02 14:02:50

用ATL开发网页控件时,IE总会出现“该控件不是安全的”之类的提示,去掉这个提示的方法就是使用 IObjectSafety 将其标记为可安全初始化的控件。
 
实现方法如下:
首先在需要将 IObjectSafetyImpl 添加到该控件的派生类中,然后在映射列表中添加IObjectSafety,具体添加的代码如下:
class CHutaow :
// 添加到控件的派生类列表中
public IObjectSafetyImpl<CHutaow,
INTERFACESAFE_FOR_UNTRUSTED_CALLER|INTERFACESAFE_FOR_UNTRUSTED_DATA>
... {
public:
BEGIN_COM_MAP(CHutaow)
 COM_INTERFACE_ENTRY(IObjectSafety) //创建IObjectSafety的映射
 ...
END_COM_MAP()
...
}
PS:如果出现"'IObjectSafetyImpl' : base class undefined"的错误,则需要添加"atlctl.h"头文件。
阅读(2101) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~