asp二进制输出图片的源代码

'8*******************************************8
'
 需要在你的服务器上安装 MDAC 2.6 或MDAC2.7
'
8*******************************************8
<%
Dim strFilePath, strFileSize, strFileName
Const adTypeBinary = 1
Response.Buffer 
= True
strFileName
="logo.gif"
FilePath
=Server.MapPath("manage/images/"&strFileName)    
Response.Clear

Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type 
= adTypeBinary
objStream.LoadFromFile FilePath

strFileSize 
=objStream.size
strFileType 
= lcase(Right(strFileName, 4)) '文件扩展名

' 通过文件扩展名判断 Content-Types
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= "&strFileName&""
Response.AddHeader "Content-Length", strFileSize
Response.Charset 
= "UTF-8" ' 客户端浏览器的字符集UTF-8
Response.ContentType = ContentType

Response.BinaryWrite objStream.Read
Response.Flush

objStream.Close
Set objStream = Nothing
%
>
posted @ 2006-01-19 18:03  zzh  阅读(1454)  评论(0编辑  收藏  举报