Foros del Web » Programando para Internet » ASP Clásico »

Forzar descarga, Marca error el .pdf al abrirlo

Estas en el tema de Forzar descarga, Marca error el .pdf al abrirlo en el foro de ASP Clásico en Foros del Web. Hola buenas he estado buscando en el foro como hacer esto pero nomas no se deja, he probado este script que encontre por aqui y ...
  #1 (permalink)  
Antiguo 25/06/2006, 01:42
 
Fecha de Ingreso: marzo-2006
Ubicación: Ramos Arizpe, Coah
Mensajes: 70
Antigüedad: 18 años, 1 mes
Puntos: 0
Forzar descarga, Marca error el .pdf al abrirlo

Hola buenas he estado buscando en el foro como hacer esto pero nomas no se deja, he probado este script que encontre por aqui y funciona la descarga el problema es que al abrir el archivo en .pdf me marca "Error al abrir el documento. El archivo esta dañado y no puede repararse" por cierto investigando encontre un mensaje relacionado en un foro que dice: "Cuando el pdf lo abro con el acrobat reader 5.0, todo va perfecto, pero lo abro con la version 7.0, me da el error: "Error al abrir el documento. El archivo esta dañado y no puede repararse", el archivo de origen no esta dañado y lo abre perfecto, pero no se cual sea la incompatibilidad que al forzar las descarga estos marquen este error, que tiene el acrobat reader 7 alguna pista?

Gracias.
Código PHP:
<%
Response.Clear
Response
.ContentType "application/unknown"  arbitrary 
FPath 
server.mappath ("arcihvos\arch.pdf")
Response.write(FPath)
Response.AddHeader "Content-Disposition","attachment; filename=arch.pdf"
Set adoStream CreateObject("ADODB.Stream"
adoStream.Open() 
adoStream.Type 
adoStream
.LoadFromFile(FPath
Response.BinaryWrite adoStream.Read() 
adoStream.Close 
Set adoStream 
Nothing                         
%> 
  #2 (permalink)  
Antiguo 25/06/2006, 10:50
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 4 meses
Puntos: 16
FPath = server.mappath ("arcihvos\arch.pdf")
Esta linea esta bien escrita? me refiero a la url
  #3 (permalink)  
Antiguo 25/06/2006, 12:43
 
Fecha de Ingreso: marzo-2006
Ubicación: Ramos Arizpe, Coah
Mensajes: 70
Antigüedad: 18 años, 1 mes
Puntos: 0
Asi es, bueno la real es otra pero la puse ilustrativa, gracias por responder.
  #4 (permalink)  
Antiguo 25/06/2006, 21:39
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 4 meses
Puntos: 16
Código PHP:
Response.ContentType "application/x-unknown"  arbitrary 
FPath 
server.mappath ("archivo\" & prod)
Response.AddHeader "
Content-Disposition","attachmentfilename=" & prod

Set adoStream = CreateObject("
ADODB.Stream") 
adoStream.Open() 
adoStream.Type = 1 
adoStream.LoadFromFile(FPath) 
Response.BinaryWrite adoStream.Read() 
adoStream.Close 
Set adoStream = Nothing 
yo lo tengo exactamente como tu, solamente con la linea en negritas algo diferente, prod es una variable con el nombre del archivo, otra cosa podria ser que el nombre de archivos tenga espacios, a mi me paso algo asi pero no me acuerdo que era , espero sea algo de lo que te digo para que te ayude
  #5 (permalink)  
Antiguo 26/06/2006, 00:48
 
Fecha de Ingreso: marzo-2006
Ubicación: Ramos Arizpe, Coah
Mensajes: 70
Antigüedad: 18 años, 1 mes
Puntos: 0
Chidos, ya funciono era un problema mio no sabia que el codigo debia ponerse en un archivo en limpio, mi problema era que el archivo origen pesaba 500 kb y el que se descargaba pesaba 508 kb, esto debido a que tenia mas contenido asp-html en el archivo donde esta el codigo para forzar la descarga, bueno con ese cambio funciono perfecto, gracias sjam7 el ultimo mensaje me ayudo en algo para localizar el problema.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:45.