深圳全飞鸿

标题: 解决WebBrowser控件打开本地页面报安全提示的问题 [打印本页]

作者: zhgc    时间: 2019-10-12 17:05
标题: 解决WebBrowser控件打开本地页面报安全提示的问题

解决WebBrowser控件打开本地页面报安全提示的问题

今天用C#封装了WebBrowser控件去打开一个本地页面,页面中包含了JavaScript脚本,该脚本通过WebBrowser的ObjectForScripting属性,访问C#代码。代码非常简单,但没想到打开页面的时候,WebBrowser报安全提示:“为帮助保护你的安全,你的Web浏览器已经限制此文件显示可能访问你的计算机的活动内容。单击此处查看选项…”。尼玛,这是我自己写的本地页面好不好,你WebBrowser管得太多了吧。

不过google一番后,WebBrowser或者说IE这么设定是有原因的。大致是如果用户把因特网上的网页保存到本地硬盘,再用IE打开的时候,网页将运行在Local Machine Zone中。XP SP2之前,Local Machine Zone的网页具有所有权限,这就造成了安全漏洞,因此从XP SP2后,Local Machine Zone中的网页就默认禁用ActiveX和脚本了。

具体可见以下两篇文档。

http://blogs.msdn.com/b/ieintern ... tivex-controls.aspx

http://msdn.microsoft.com/en-us/ ... 8%28v=vs.85%29.ASPX



我们这里说问题的解决办法,在页面文件的头部,加上以下字符串:

  1. <!-- saved from url=(0014)about:internet -->
复制代码





欢迎光临 深圳全飞鸿 (http://www.nagomes.com/disc/) Powered by Discuz! X3.2