ie浏览器运行activex时会遇到警告提示,如何去掉?
ie浏览器运行activex控件一般会报如下两种提示
第一种:
第二种:
第一种警告提示解决方案(两个办法):
1、修改浏览器设置
打开浏览器internet选项----->高级—→安全标签下把允许活动内容在“我的电脑”的文件中运行打勾
参考网站:https://blog.csdn.net/qq_24991841/article/details/81712809
2、修改注册表
打开注册表找到HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_LOCALMACHINE_LOCKDOWN
查看此项是否有iexplore.exe 如果没有新增,设置其值为0
参考网站:https://blog.csdn.net/xuebing1995/article/details/90752011
第二种警告提示解决方案(两个办法):
1、修改代码
参考网站:https://www.cnblogs.com/qingtian224/p/6423893.html
2、修改注册表
参考网站:https://blog.csdn.net/gonggongjie/article/details/83375965
部署方案 :
1、制作CAB文件、编写INF文件:
参考网站:https://blog.csdn.net/envon123/article/details/76681337
下边是我编写的INF文件
[Version]
signature="$CHICAGO$"
AdvancedINF=2.0
[Add.Code]
MFCActiveXControl1.ocx=MFCActiveXControl1.ocx
[MFCActiveXControl1.ocx]
file-win32-x86=thiscab
clsid={365039f1-3e59-476c-bc6b-eae4270a5b2d}
FileVersion=1,0,0,0
RegisterServer=yes
2、编写html,测试效果:
<!DOCTYPE html>
<html>
<!--MFCActiveXControl1.ocx"-->
<head>
<title>MFCActiveX test</title>
<meta charset="utf-8"></meta>
</head>
<body>
<object codebase="http://localhost:8080/tester.CAB#version=1,0,0,0" id="CMFCActiveXDemo" classid="clsid:365039f1-3e59-476c-bc6b-eae4270a5b2d"></object>
<script type="text/javascript">
function onCall() {
var testOcx = document.getElementById("CMFCActiveXDemo");
if (!testOcx) {
alert("CMFCActiveXDemo can't find");
return;
}
alert(testOcx.add(2.0, 4.0));
}
</script>
<input type='button' name ="CMFCActiveXDemo" value="调用c++函数(2+4)" onclick="onCall()"/>
</body>
</html>
说明:
(1)codebase属性是放在服务器上制作好的CAB文件
(2)classid是MFC工程uuid,所下图所示
// CMFCActiveXControl1Ctrl 的类信息
[
uuid(365039f1-3e59-476c-bc6b-eae4270a5b2d)
]
coclass MFCActiveXControl1
{
[default] dispinterface _DMFCActiveXControl1;
[default, source] dispinterface _DMFCActiveXControl1Events;
};
(3)如果自己制作的CAB文件没有加上数字签名,会报以下错误
这时需要给自己制作的CAB文件添加数字签名,不然ie浏览器会阻止运行
windos10制作数字签名参考:http://www.coderjie.com/blog/9fa760e0bd2c11e6841d00163e0c0e36
查看自己的CAB程序是否已经添加签名,右键CAB文件—→属性,属性TAB页如果有数字签名,即添加成功,如下图所示
选中选择详细信息,如果显示此数字签名正常,即ie浏览器不会阻拦,如果显示不正常,需要安装证书,如下图所示
至此完成以上步骤,就可以打开html文件测试效果了