我们有一个旧的Web应用程序,我们仍然在运行,它需要Internet Explorer自动下载.dll文件才能启动程序。 这是一个针对学生的网站基础testing程序。
当我们有IE7我们的组策略允许下载工作正常,但最近我们决定升级到IE8,现在它不会允许该DLL正确下载。
它出现了一个黄丝带说:
编辑(添加这个来澄清):“为了帮助保护您的安全,Internet Explorer阻止了这个网站下载文件到您的计算机,点击此处查看选项…”
我已经尝试了一切,甚至禁用IE8的每个安全function,但黄丝带仍然显示,并表示已禁用该文件被下载。
我已经研究到了这一步。 我想知道如果IE8默认情况下不会允许dll文件自动下载,不pipe怎么说,换句话说,你不能改变它。
回答:经过几个小时的盲目search,我find了答案
承载WebBrowser控件的应用程序可以利用对文件下载的更严格的限制。 您可以通过安全function控制registry项(FEATURE_RESTRICT_FILEDOWNLOAD)来pipe理限制。 Internet Explorer(Iexplore.exe)需要在此function控件下运行以禁用该function,可以通过设置以下registry项来实现此function:
HKEY_LOCAL_MACHINE(或HKEY_CURRENT_USER)> SOFTWARE> Microsoft> Internet Explorer> Main> FeatureControl> FEATURE_RESTRICT_FILEDOWNLOAD> iexplore.exe = 0x00000000
我创build了一个新的DWORDregistry项名称iexplore.exe并将其设置为零。
更多信息,请点击以下链接:
http://msdn.microsoft.com/en-us/library/dd565669(VS.85).aspx
您所看到的警告文字将会有帮助。 如果我不得不猜测,我会说你试图下载一个未经签名的ActiveX控件,并且默认情况下,在所有的IE安全区域中禁止自动下载这些未签名的控件。 (我相信“受信任的站点”区域会提示未签名的控件,但是没有任何区域允许自动下载未签名的控件。)
可以使用客户端计算机将信任的证书对ActiveX控件进行签名,也可以使用组策略更改浏览器的行为以允许未签名的代码下载。