En la página llamada (la que yo llamo paginaaspparaimagenes.asp) no debe haber nada. Es decir, es mejor crearla con el block de notas ya que no te mete ningun texto de forma predeterminada (como el dreamweaver).
Solo esto:
(los tag de apertura y cierre)
<%
' Abrimos el buffer
response.Buffer = True
' Limpiamos cualquier cabaecera que pueda haber
response.Clear
' Hacemos las transacciones que sean necesarias
dim id
id = request("id")
if id <> "" then
Set rs = Server.CreateObject("adodb.recordset")
strSQL = "select FileData,ContentTyped from fotos where id = " & id
rs.Open strSQL, MM_fotos_STRING
' Fijate que todavia no he mandado nada a la pantalla
' Es ahora cuando defino el content-type de la página
' Lo defino desde la BD porque guardo tanto imagenes
' como ejecutables, psds y demas. O sea, archivos binarios
' con sus respectivos content-type. No es necesario
' que sean imagenes. Al navegador le da igual :D
' si solo vas a usar un tipo (jpg) lo puedes poner
' directamente:
' response.ContentType = "image/JPEG"
' (mas info:
http://www.topxml.com/asp/response_o...ontenttype.asp)
response.contentType = rs("ContentTyped")
' Ahora envio el output:
response.BinaryWrite(rs("FileData"))
' Ahora solo queda cerrar el recordset y la conexion
rs.close()
end if
' Y descargamos todo lo que haya en el buffer.
' Es aqui donde realmente el ASP "pinta" el contenido
response.End()
%>
Y ya esta. Hemos creado una imagen "en modo texto"
NOTA: No uso el Flush() porque este método sigue dejando abierto el documento. End() descarga el buffer y cierra la página con lo que haya.
Un saludo y Viva San Viernes!!!!!!!!