用流(stream)技术做下载

80酷酷网    80kuku.com

  stream|下载function dl(f,n)
on error resume next
Set S=CreateObject("Adodb.Stream")
S.Mode=3
S.Type=1
S.Open
S.LoadFromFile(f)
if Err.Number>0 then
Response.Status="404"
else
Response.ContentType="application/octet-stream"
Response.AddHeader "Content-Disposition:","attachment; filename=" & n
Range=Mid(Request.ServerVariables("HTTP_RANGE"),7)
if Range="" then
Response.BinaryWrite(S.Read)
else
S.position=Clng(Split(Range,"-")(0))
Response.BinaryWrite(S.Read)
End if
end if
Response.End
end function

函数使用示例:
call dl(Server.MapPath("../download/07.zip"),"07.zip")

分享到
  • 微信分享
  • 新浪微博
  • QQ好友
  • QQ空间
点击: