ATL控件正常签名打包,然后安装之后还是会提示:

 

没理由啊,签名是花钱搞得正当的签名。后来查了资料才知道这还不够,需要在创建ATL控件的时候继承一个IObjectSafetyImpl 类

知道了原因,我以为还要让我重新建一个ATL工程,后来我做了个试验,就是重新创建一个新的ATL控件然后在添加ATL类的时候选择添加IObjectSafety支持如下:

 

选择之后看看新建的工程跟我之前开发的ATL控件工程有什么不同,然后根据不同直接使原先的工程参考新建的ATL控件同步就行

通过对比发现了新建的ATL工程多了下面2处:

还有一个:

 

然后我就直接在我之前开发的ATL工程上加上了上面的2处不同点,然后编译之后,发现竟然不再提示那个烦人的Activex控件安全问题了

呵呵!

总结一下就是需要添加:IObjectSafety 接口

posted on 2017-09-20 19:32  瓦楞球  阅读(503)  评论(0编辑  收藏  举报