请问怎样才能用response.redirect("url")下载不在虚拟目录下的文件?
因为我的虚拟目录在D:
而文件在E:
但是E:上不准建立虚拟目录.
请问有没有办法呀?
问题点数:0、回复次数:3Top
1 楼net_lover(【孟子E章】)回复于 2003-06-01 00:34:57 得分 0
用Ado.Stream对象Top
2 楼net_lover(【孟子E章】)回复于 2003-06-01 00:35:31 得分 0
<%
'***********************************************
' 强制下载已知类型的文件
'***********************************************
Const ForReading=1
Const TristateTrue=-1 'Unicode
Const FILE_TRANSFER_SIZE=16384 '16k
'Use the following line for IIS4/PWS - this is the default for IIS5
Response.Buffer = True
Function TransferFile(path, mimeType, filename)
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="&filename
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 path, mimeType, sucess
'Server.MapPath(path)
path = "C:\mm.htm"
mimeType = "application/x-msdownload"
sucess = TransferFile(path, mimeType,"cdd.doc")
Response.End
%>
Top
3 楼hcz10(方肖.net)回复于 2003-06-01 21:17:03 得分 0
以上的方法我已经试过了,可以是可以,但是下载虚拟目录以外的文件的速度实在太慢了,而虚拟目录内的文件却很快.
不知道为什么?Top




