Frage

Ich habe ein Web-Browser-Objekt auf einem winform, dass ich ein pdf verwenden möchte anzuzeigen. Die pdf befindet sich auf einem FTP-Server. Ich konnte das pdf zeigen, indem es das Herunterladen auf die Festplatte und zeigt die Web-Browser-Objekt, um es (navigate), aber ich möchte streamen es aus Sicherheitsgründen. Hat jemand in der Lage einen pdf zu einem Web-Browser zu streamen, die auf einem .Net winform ist?

    Dim URI As String = host & targetFilename
    Dim ftp As System.Net.FtpWebRequest = CType(FtpWebRequest.Create(URI), FtpWebRequest)

    ftp.Credentials = New System.Net.NetworkCredential(userName, passWord)
    ftp.KeepAlive = False
    ftp.UseBinary = True
    ftp.Method = System.Net.WebRequestMethods.Ftp.DownloadFile

    Using webResp As System.Net.FtpWebResponse = DirectCast(ftp.GetResponse(), System.Net.FtpWebResponse)
        Using respStream As Stream = webResp.GetResponseStream
            If GetFileExtension(targetFilename) = "PDF" Then
                WebBrowser1.DocumentStream = respStream
                Application.DoEvents()
            End If

            respStream.Close()
        End Using
    End Using
War es hilfreich?

Lösung

Da Sie bereits das WebBrowser-Steuerelement verwendet wird; warum haben sie nicht auf eine lokale HTML-Datei verweisen, die einen embed-Tag enthält:

<embed src="ftp://ftpserver/yourpdf.pdf" />

Ich habe es nicht getestet, aber die pdf sollte im Rahmen der Steuerung bedient werden.

Andere Tipps

Ich würde empfehlen, ein PDF Viewer Control mit anstatt einem Web-Browser Kontrolle, wie ein Web-Browser-Steuerung erfordert, dass der Client installiert ein PDF-Viewer.

Dies wird auch ermöglicht es Ihnen, ein Dokument, um es zu streamen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top