0

我在 VB.NET 中编写了一个与第 3 方 Web 服务的接口。该界面的最后一步涉及第三方向我们(作为流)交付 PDF 文档。流式传输完成后,我将 PDF 的副本保存在我们的服务器上,以便我们的用户可以通过单击我们系统中的链接来查看 PDF。PDF 在 Acrobat X 中可以正常打开,但是当我尝试以编程方式打开它时,出现错误提示“文件已损坏且无法修复”。我也可以在 IE 中很好地打开文件,没有任何问题,并且显示此 PDF 的相同代码在许多其他现有 PDF 上运行得很好,这些 PDF 早于第 3 方界面。

按照我在网上看到的一些帖子中的建议,我已经清空了临时 Internet 文件。我还在 Notepad++ 中打开了 PDF,%PDF 标记位于第一位,%%EOF 标记位于最后,因此我可以看到的文档源中肯定没有可见的损坏。以下是我们用来在我们网站上的单独浏览器实例中打开 PDF 的(非常标准的)代码:

PDFFile = System.AppDomain.CurrentDomain.BaseDirectory & Request.QueryString("LetterPath") & Request.QueryString("Letter") 
Response.Clear()
Response.ClearHeaders()
Response.BufferOutput = True
Response.ContentType = "application/pdf"
Response.WriteFile(PDFFile)
Response.Flush()

有人处理过这个问题或有任何想法吗?

4

1 回答 1

2

添加一个Response.End()应该做到这一点。

于 2012-06-21T16:11:51.120 回答