对于ATL来说,要消除该安全提示就是需要将标记控件为安全的,也就是要实现IObjectSafety这个类,
具体的方法如下:
1.找到你dll控件的接口实现类的.H文件,例如控件名称为“ATLTest”,则头文件名称为“ATLTest.h”的
继承类 class ATL_NO_VTABLE CATLTest : 列表的末尾,并在上一行中添加一个逗号,并加上
public IObjectSafetyImpl<类名, INTERFACESAFE_FOR_UNTRUSTED_CALLER>
2. 将下行添加到 ATLTest.h 中的 COM 映射 (BEGIN_COM_MAP(CATLTest))
COM_INTERFACE_ENTRY(IObjectSafety) 即可
3. 如果IObjectSafetyImpl 未定义, 则需包含Atlctl.h
本文介绍如何通过实现在DLL控件中实现IObjectSafety接口来消除安全提示。主要步骤包括修改控件的.H文件,添加IObjectSafetyImpl定义,并在COM映射中加入IObjectSafety接口。
4093

被折叠的 条评论
为什么被折叠?



