IE 11中的Adobe PDF灰色屏幕

时间:2019-04-11 13:21:06

标签: java internet-explorer acrobat

(我知道是2019年,为什么还有人仍在使用IE?因为我们仍然使用Acrobat PDF插件。)

我有一个Web应用程序(除其他事项外)使用Acrobat插件在弹出窗口中显示PDF文件(进行数字签名)。

我们遇到一个问题,即某人第一次访问要签名的PDF时,显示的全部是Adobe Gray Screen of Death。如果我们关闭弹出窗口并重新显示,则会显示PDF。

我尝试了以下步骤来解决问题:

  • 在Acrobat中检查“显示大图像”
  • 将响应标头修改为以下内容:

    缓存控制:无缓存,无存储,    必须重新验证,后检查= 0,预检查= 0(删除无缓存会 没有帮助)

    编译指示:私人

    有效期:0

我还尝试了在动作向导下的Acrobat中激活错误记录,但是什么也没有生成。

最终,有人会重写此代码以使其在现代浏览器中工作(现在无法完成),但是现在,任何人都可以提供帮助吗?

5 个答案:

答案 0 :(得分:2)

我们遇到了同样的问题。像魅力一样起作用的解决方案: 将标头cache-control设置为no-cache很好。

答案 1 :(得分:1)

我找到了适合我的解决方案。我禁用了Adobe Reader增强安全性设置中的“在AppContainer中运行”功能: Disabling "Run in AppContainer"

答案 2 :(得分:1)

我在IE11上遇到了同样的问题,该问题通过完全删除Cache-Control标头得以解决。

具体地说,我删除了:

Cache-Control: must-revalidate, post-check=0, pre-check=0

使用Cache-Control标头重新添加这些选项中的任何一个都会引起问题。

答案 3 :(得分:0)

好的,回到这个问题。我认为可行的原始解决方案无效。

似乎正在发生的事情是,加载PDF的代码实际上是连续两次生成的(编码错误)。 Acrobat ActiveX插件尚未完成初始化以响应第一个加载请求,并且向其抛出第二个文档似乎使插件崩溃,因此屏幕灰屏。

跟踪第二个负载并删除它可以解决该错误。

答案 4 :(得分:0)

我们也在经历这个问题。对于我们来说,当响应标题为:

Cache-Control: public, max-age=0, s-maxage=0
Date: ...
Expires: ...
Vary: *

当我们将响应头更改为:

Cache-Control: public, no-store, max-age=0, s-maxage=0
Date: ...
Expires: ...
Vary: *

请注意,我们正在使用C#,因此我们的实际解决方案可能会有所不同。我们在操作方法中使用了此属性:

[OutputCache(Duration = 0, NoStore = true)]