Problema con descargas

26/09/2006 - 12:00 por Carlos Marco | Informe spam
Buenos días. Tengo un problema con una página que permite descargar
archivos. El caso es que desde un ordenador a la hora de pinchar en un
archivo, le descarga "default.asp", página que no existe en mi directorio.

El código que tengo es el siguiente:

Dim miarchivo
Dim miruta
Dim midescarga
Dim fso
miarchivo = request("archivo")
miruta = replace(request("ruta"),"/","\")
midescarga = miruta & "\" & miarchivo
Response.ContentType = "application/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=" &
miarchivo
Const adTypeBinary = 1
Dim strFilePath
strFilePath = midescarga 'This is the path to the file on disk.
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile strFilePath
Response.BinaryWrite objStream.Read
objStream.Close
Set objStream = Nothing

Este código a mi me funciona correctamante, pasandole el nombre del archivo
(miarchivo) y la ruta (miruta). Tambien funciona correctamente en otros
ordenadores, pero en el que debe funcionar, no funciona. ¿Cual puede ser el
problema? ¿Hay alguna forma mejor para descargar archivos (sean del tipo que
sean)?
 

Leer las respuestas

#1 Matias Iacono
26/09/2006 - 14:05 | Informe spam
Como no funciona?

Que error te da?

La forma de hacer la descarga es correcta. Indudablemente, siempre esta la
posibilidad de hacer un link directo al archivo, pero para descargar archivos
de rutas que no estan expuestas el codigo es funcional.

Microsoft MVP
Orador Regional INETA


"Carlos Marco" wrote:

Buenos días. Tengo un problema con una página que permite descargar
archivos. El caso es que desde un ordenador a la hora de pinchar en un
archivo, le descarga "default.asp", página que no existe en mi directorio.

El código que tengo es el siguiente:

Dim miarchivo
Dim miruta
Dim midescarga
Dim fso
miarchivo = request("archivo")
miruta = replace(request("ruta"),"/","\")
midescarga = miruta & "\" & miarchivo
Response.ContentType = "application/octet-stream"
Response.AddHeader "Content-Disposition", "attachment; filename=" &
miarchivo
Const adTypeBinary = 1
Dim strFilePath
strFilePath = midescarga 'This is the path to the file on disk.
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile strFilePath
Response.BinaryWrite objStream.Read
objStream.Close
Set objStream = Nothing

Este código a mi me funciona correctamante, pasandole el nombre del archivo
(miarchivo) y la ruta (miruta). Tambien funciona correctamente en otros
ordenadores, pero en el que debe funcionar, no funciona. ¿Cual puede ser el
problema? ¿Hay alguna forma mejor para descargar archivos (sean del tipo que
sean)?



Preguntas similares