none
ImagenButton no me abre archivo PDF en hosting RRS feed

  • Pregunta

  • Buen día estoy intentando desde una aplicación en ASP.NET corriendo en un HOSTING DonWeb abrir un archivo PDF, el código utilizado es el siguiente.

    Protected Sub RECIBO_Click(sender As Object, e As ImageClickEventArgs) Handles RECIBO.Click

            Dim archivo As String = "02-20248206404-2016-04.pdf"

            Dim filepath As String = Server.MapPath("RECIBOS\" & archivo)

            Dim fileInfo As FileInfo = New FileInfo(filepath)

            If (fileInfo.Exists) Then
                Response.Clear()
                Response.AddHeader("Content-Disposition", "inline;attachment; filename=" + fileInfo.Name)
                Response.AddHeader("Content-Length", fileInfo.Length.ToString())
                Response.ContentType = "application/pdf"
                Response.Flush()
                Response.WriteFile(fileInfo.FullName)
                Response.End()

            Else
                Me.Aviso.Text = "EL RECIBO NO ESTÁ DISPONIBLE"
            End If

        End Sub

    El problema es que abre el acrobat reader pero nunca finaliza la apertura del archivo, lo probé en diferentes exploradores.

    El archivo está correcto no está dañado ya que abriendolo directamente desde la línea de comando en el explorer abre correctamente.

    Adjunto la imagen donde muestra que queda en 1% la descarga y nunca finaliza.

    Si alguien me puede ayudar lo agradecería.

    lunes, 25 de abril de 2016 12:43

Respuestas

  • Buen día, probé la opción que me brindaron pero seguía el mismo error, al final el problema era el hosting, me crearon un "Aplicattion Pool Propio" y salió andando.

    Mil gracias.

    martes, 26 de abril de 2016 13:18

Todas las respuestas

  • Hola, en el Server.MapPath, como agumento pasale una ruta precedida por "~/" para que te mapee a la carpeta de tu sitio. Como le estás pasando una ruta relativa probablemente te esté mapeando C:\windows\intesrv\.

    Salu2

    lunes, 25 de abril de 2016 13:32
  • Gracias, pero no es no me encuentra el archivo. El archivo lo encuentra pero no lo descarga como si estuviera corrupto, sin embargo está correcto.
    lunes, 25 de abril de 2016 14:42
  • hola

    cuando envias el archivo al cliente deberias indicar la ruta completa

    la ruta deberias armarla usando

    Dim archivo As String = "02-20248206404-2016-04.pdf"
    
    Dim path As String = Server.MapPath("~/RECIBOS")
    
    Dim fullpath As String = Path.Combine(filepath, archivo)

    y despues debes asignar el fullpath para enviarlo al cliente

    Response.WriteFile(fullpath)

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    lunes, 25 de abril de 2016 14:58
  • Gracias Leandro, lo pruebo esta noche y les comento.

    Saludos.

    lunes, 25 de abril de 2016 15:36
  • Buen día, probé la opción que me brindaron pero seguía el mismo error, al final el problema era el hosting, me crearon un "Aplicattion Pool Propio" y salió andando.

    Mil gracias.

    martes, 26 de abril de 2016 13:18