引用:填充Response

王朝asp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

回复人: appleboyallen(揪揪) ( ) 信誉:100 2002-06-28 20:50:25Z 得分:50

可以把文件放到用户不能到达的地方,然后在asp文件中用binaryread,的方法发给用户,这里有一个函数,

Const ForReading=1

Const TristateTrue=-1

Const FILE_TRANSFER_SIZE=16384

Function TransferFile(path, mimeType)

Dim objFileSystem, objFile, objStream

Dim char

Dim sent

send=0

TransferFile = True

set objFileSystem=server.CreateObject("scripting.filesystemobject")

Set objFile = objFileSystem.GetFile(path)

Set objStream = objFile.OpenAsTextStream(ForReading, TristateTrue)

Response.AddHeader "content-type", mimeType

Response.AddHeader "Content-Disposition","attachment;filename="&file_name

Response.AddHeader "content-length", objFile.Size

Do While Not objStream.AtEndOfStream

char = objStream.Read(1)

Response.BinaryWrite(char)

sent = sent + 1

If (sent MOD FILE_TRANSFER_SIZE) = 0 Then

Response.Flush

If Not Response.IsClientConnected Then

TransferFile = False

Exit Do

End If

End If

Loop

Response.Flush

If Not Response.IsClientConnected Then TransferFile = False

objStream.Close

Set objStream = Nothing

Set objFileSystem = Nothing

End Function

Dim mimeType, sucess

mimeType = "application/x-msdownload"

file_path=server.MapPath("software/" & file_name )

success = TransferFile(file_path, mimeType)

%>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航