Tengo un sistema con el cual proporciono archivos a mis clientes. Estos entran en su zona de descarga con su propio id-password. Los archivos estan en un directorio oculto al servidor web y poseen nombres especificos para cada cliente:
c:/archivos/
-----------
SDFFEWSS.exe
A2344EDRQ.exe
etc
Desde un script en asp leo las solicitudes de cada cliente, les cambio el nombre al archivo por setup.exe y les envio el archivo. Asi:
Código:
Todo Ok con archivos que pesan menos de 1.5Mb aprox. Sin embargo, cuando son archivos mayores se queda eternamente intentando recopilar información del archivo (en el caso de IE) o solo descarga unos 400k (en el caso de FireFox). response.buffer = true response.clear strFileName = request.querystring("origen") ' Solo para comprobar que existe realmente set FSO = Server.CreateObject("Scripting.FileSystemObject") if not fso.FileExists(strFileName) then response.write("Archivo no encontrado") else set oFile = FSO.GetFile(strFileName) strFileSize = oFile.Size Set objStream = Server.CreateObject("ADODB.Stream") objStream.Open objStream.Type = adTypeBinary objStream.LoadFromFile strFileName strFileType = right(strFileName, len(strFileName) - instrrev(strFileName, ".")) Select Case strFileType Case "asf" ContentType = "video/x-ms-asf" Case "avi" ContentType = "video/avi" Case "doc" ContentType = "application/msword" Case "zip" ContentType = "application/zip" Case "xls" ContentType = "application/vnd.ms-excel" Case "gif" ContentType = "image/gif" Case "jpg", "jpeg" ContentType = "image/jpeg" Case "wav" ContentType = "audio/wav" Case "mp3" ContentType = "audio/mpeg3" Case "mpg", "mpeg" ContentType = "video/mpeg" Case "rtf" ContentType = "application/rtf" Case "htm", "html" ContentType = "text/html" Case "asp" ContentType = "text/asp" Case Else 'Handle All Other Files ContentType = "application/octet-stream" End Select Response.AddHeader "Content-Disposition", "attachment; filename=setup.exe" Response.AddHeader "Content-Length", strFileSize Response.Charset = "UTF-8" Response.ContentType = ContentType Response.BinaryWrite objStream.Read response.flush objStream.Close Set objStream = Nothing end if
¿Alguien sabe a qué es debido? Gracias de antemano.
Un saludo