Wir haben ein IFrame auf einer Seite (nennen wir diese Seite DocViewer.aspx) deren Quelle auf eine andere Seite gesetzt ist. Lassen Sie uns, dass die andere Seite aufrufen DocContent.aspxServer generierte PDF wird nicht in IFrame auf aspx-Seite auf einigen (aber nicht allen) PCs angezeigt
ehe die Seite zu laden, auf DocContent.aspx.vb ist:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'get pdf bytes from session
Dim pdfBytes As Byte() = CType(Session("PDFBytes"), Byte())
'remove pdf bytes from session
Session.Remove("PDFBytes")
With Response
' Set the response type to PDF
.ClearHeaders()
.Buffer = True
.ContentType = "application/pdf"
.AddHeader("Content-Disposition", "inline; filename=" & "midoc.pdf")
.AddHeader("Content-Length", (pdfBytes.GetUpperBound(0) + 1).ToString)
Response.OutputStream.Write(pdfBytes, 0, pdfBytes.Length)
.End()
End With ' response
End Sub
und hier ist die DocContent.aspx Seite in allem ist es Ruhm:
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="DocContent" Inherits="OurCompany.OurNamespace.DocContent" %>
Die Der Grund, dass wir ein IFrame verwenden, ist, dass wir die PDF in einer Seite hosten, die auch einige Scripts ausführt und weitere Steuerelemente enthält (wenn eine bestimmte Bedingung erfüllt ist, rufen wir einen modalen Dialog mit dem Modaldialog-Extender auf wir haben dieses Verhalten ausgeschaltet und das Problem tritt immer noch auf). Kein IFrame zu verwenden, ist auch keine machbare Lösung. Ich habe die Sicherheitseinstellungen in IE überprüft und alle sind so eingestellt, dass IFrames angezeigt werden können.
Hier ist das Problem dann - auf einigen Testern PCs die Seite zeigt die PDF-Strafe. Bei anderen bekommen wir nur eine leere Seite.
Nur ein Computer, der nicht angezeigt wurde, wird angezeigt, wenn er auf IE7 aktualisiert wurde. Dies ist leider keine Lösung, da wir alles bis auf IE 5.5 unterstützen müssen :(
ich super wäre dankbar für alle Ideen jemand hat.
ich auch erwähnen sollte, dass diese Maschinen keine Probleme haben, wenn Navigieren zu einer Seite ähnlich direkt an docContent (statt in einem IFrame gehostet wird).
Oh und dank im Voraus für Ihre Hilfe.
Haben alle Ihre Tester dieselbe Version von Reader auf ihren Computern installiert? Und können sie das PDF mit Reader auf ihrem System öffnen? – dirkgently
Verschiedene Versionen von Acrobat Reader und verschiedene Ergebnisse. Auf meinem Rechner habe ich WinXP/IE7/Acrobate Reader 7.0 (heruntergestuft von Acrobate Reader 9.0, um zu sehen, dass es funktioniert hat ... und es tat). Von den Maschinen, die nicht funktionieren einige sind Win2K, einige sind XP, einige haben Reader 9 einige haben 8 und einige haben 7 –
und schließlich zumindest die Maschinen, die die PDF nicht anzeigen werden, können die PDF außerhalb anzeigen der Browser. Danke fürs Lesen;) –