【问题标题】:How to generate download .pdf for Internet Explorer?如何为 Internet Explorer 生成下载 .pdf?
【发布时间】:2012-05-29 14:52:51
【问题描述】:

我正在做一个网站,用户在其中输入一个名字,然后按下一个按钮,提示服务器根据提供的信息创建一个pdf文件,然后将文件发送给用户。

我在没有 IIS 的笔记本电脑上测试网站。

我需要 pdf 是希伯来语的,但在希伯来语上找不到带有 vb 的 pdfwrite;相反,我创建了一个 MS Word 文档,然后使用下面的代码将其转换为 pdf。

这在 Firefox、Chrome 和 Safari 上运行良好,但在 Internet Explorer 上,页面会在下载前断开连接。执行create word语句时断开连接。

谁能帮帮我?

      Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles      Button1.Click
      Dim strname As String
      strname = TextBox1.Text.Trim

      Dim oword As New word.Application
      Dim odoc As New word.Document
      oword = CreateObject("word.Application")

      odoc = oword.Documents.Add("C:\documents\tamp.dotx")

      odoc.Bookmarks.Item("name1").Range.Text = strname
      odoc.Bookmarks.Item("name2").Range.Text = strname
      odoc.Bookmarks.Item("name3").Range.Text = strname
      odoc.Bookmarks.Item("name4").Range.Text = strname
      odoc.Bookmarks.Item("name5").Range.Text = strname
      odoc.Bookmarks.Item("name6").Range.Text = strname

      odoc.ExportAsFixedFormat(Server.MapPath("\neshume.pdf"), 17)
      Response.Redirect(Server.MapPath("\neshume.pdf"))
      end sub

【问题讨论】:

  • 事件日志说什么?
  • 我的猜测是它在您创建文件的下一行失败。显然 IE 浏览器中的安全级别与其他浏览器不同,并且不允许访问路径 C:\documents \tamp.dotx
  • Chiwda 那么我能做些什么来纠正这个问题?
  • 我认为页眉设置不正确,无法被 IE 接受。您会尝试缩小除 Response.Redirect(Server.MapPath("\neshume.pdf")) 之外的所有代码的问题吗?您是否尝试仅下载 .pdf(地址应为 http://localhost:port/neshume.pdf)?我建议使用@name 向适当的人发送评论回复。
  • @IvanH 我尝试不使用任何其他代码但失败了

标签: asp.net vb.net pdf download ms-word


【解决方案1】:

原来问题不在代码中,我的机器出了点问题,我在另一台计算机上测试了它,它运行良好

【讨论】:

  • 即使问题确实来自您的代码,但如果您解释导致此问题的机器出了什么问题,它可能会帮助其他有类似问题的人。
【解决方案2】:

替换

Response.Redirect(Server.MapPath("\neshume.pdf"))

 Response.Redirect("neshume.pdf")

你不能重定向到完整路径(也许它被 ff 接受了,因为它在同一台计算机上运行)。

【讨论】:

  • 这似乎不是网站在处理代码时崩溃的问题 oword = CreateObject("word.Application")
  • 它在 ff 中的 CreateObject 上崩溃而不是在 ie 中?它很奇怪。你会发布确切的消息吗?你试过把断点放到那个地方吗?
  • 它在 ie 中关闭而不是 firefox 我在每个点都尝试了断点,它发生在上述状态
  • 您是否会让您的代码尽可能简单(文档,无参数固定路径)?我尝试复制/粘贴它,我们会看到。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-31
  • 1970-01-01
相关资源
最近更新 更多