账号通
    

账号  

密码  

4265

查看

9

回复
主题:[分享]V8.0x 下载系统及论坛下载大文件出错损坏的修改方法 [收藏主题] 转到:  
科汛官方 当前离线

47268

主题

145

广播

405

粉丝
添加关注
级别:管理员

用户积分:101604 分
登录次数:7935 次
注册时间:2006/12/7
最后登录:2023/12/14
科汛官方 发表于:2011/12/1 11:18:12   | 只看该作者 查看该作者主题 楼主 

出错参考:http://bbs.kesion.com/forumthread-278623.html



下载系统的修改文件为



item/download.asp



找到代码

  Sub downloadFile(strFile,FileOldName)

   On error resume next

   Server.ScriptTimeOut=999999

   Dim S,fso,f,intFilelength,strFilename,DownFileName

   strFilename = strFile

   Response.Clear

   Set s = Server.CreateObject("ADODB.Stream")

   s.Open

   s.Type = 1

   Set fso = Server.CreateObject("Scripting.FileSystemObject")

   If Not fso.FileExists(strFilename) Then

     Response.Write("<h1>错误: </h1><br>系统找不到指定文件")

     Exit Sub

   End If

   Set f = fso.GetFile(strFilename)

     intFilelength = f.size

     s.LoadFromFile(strFilename)

     If err Then

      Response.Write("<h1>错误: </h1>" & err.Description & "<p>")

      Response.End

     End If

     Set fso=Nothing

     Dim Data

     Data=s.Read

     s.Close

     Set s=Nothing

     If FileOldName="" Or IsNull(FileOldName) Then DownFileName=f.name Else DownFileName=FileOldName

     If Response.IsClientConnected Then

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

      Response.AddHeader "Content-Length", intFilelength

      Response.CharSet = "UTF-8"

      Response.ContentType = "application/octet-stream"

      Response.BinaryWrite Data

      Response.Flush

     End If

   End Sub

修改为:



Sub downloadFile(strFile,FileOldName)

   Dim fso,f,intFilelength,strFilename,DownFileName

   Set fso = Server.CreateObject("Scripting.FileSystemObject")

   If Not fso.FileExists(strFile) Then

     Response.Write("<h1>错误: </h1><br>系统找不到指定文件")

     Exit Sub

   End If

   Set f = fso.GetFile(strFile)

   Set fso=Nothing

      If KS.IsNul(FileOldName) Then DownFileName=f.name Else DownFileName=FileOldName

      Dim Stream,offset,TotalSize,ChunkSize ,strChunk

   Response.Buffer=False '将Response.Buffer设为否

   Response.ContentType = "application/octet-stream"

   response.AddHeader "Content-Disposition","attachment;filename=" & DownFileName

   Set Stream = Server.CreateObject("ADODB.Stream")

   Stream.type=1

   Stream.Open

   Stream.LoadFromFile strFile

   offset = 0

   ChunkSize = 2048*1024 'ChunkSize小于IIS配制文件中的AspBufferingLimit项所设置的大小

   TotalSize = Stream.Size

   while offset < TotalSize

   if (TotalSize - offset < ChunkSize) then

   ChunkSize = TotalSize-offset

   end if

   strChunk = Stream.Read(ChunkSize)

   Response.BinaryWrite strChunk

   offset = offset + ChunkSize

   wend

   Stream.Close

  End Sub









如果是论坛里的下载附件,则修改



item/filedown.asp,修改方法和上面一样。





 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
浪侠 当前离线

416

主题

4

广播

1

粉丝
添加关注
级别:四年级

用户积分:2073 分
登录次数:299 次
注册时间:2007/2/12
最后登录:2019/3/14
浪侠 发表于:2011/12/1 13:47:21   | 只看该作者 查看该作者主题 沙发 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
mz520 当前离线

628

主题

6

广播

2

粉丝
添加关注
级别:六年级

用户积分:3600 分
登录次数:170 次
注册时间:2008/8/23
最后登录:2014/8/5
mz520 发表于:2011/12/2 17:16:38   | 只看该作者 查看该作者主题 藤椅 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
gametheory 当前离线

98

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:129 分
登录次数:10 次
注册时间:2011/10/22
最后登录:2012/10/22
gametheory 发表于:2011/12/2 17:21:07   | 只看该作者 查看该作者主题 板凳 
科汛智能建站系统
谢谢 管理分享。 收集优化贴。
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
licaifuwu 当前离线

653

主题

10

广播

17

粉丝
添加关注
级别:六年级

用户积分:1585 分
登录次数:361 次
注册时间:2010/11/19
最后登录:2019/5/7
licaifuwu 发表于:2011/12/4 16:14:09   | 只看该作者 查看该作者主题 报纸 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
dff123 当前离线

165

主题

0

广播

0

粉丝
添加关注
级别:一年级

用户积分:233 分
登录次数:42 次
注册时间:2011/11/18
最后登录:2012/4/16
dff123 发表于:2011/12/4 21:35:04   | 只看该作者 查看该作者主题 地板 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
bbs0769 当前离线

18

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:30 分
登录次数:10 次
注册时间:2011/5/16
最后登录:2011/12/20
bbs0769 发表于:2011/12/19 11:19:52   | 只看该作者 查看该作者主题 7楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
w763612356 当前离线

21

主题

0

广播

0

粉丝
添加关注
级别:学前班

用户积分:18 分
登录次数:1 次
注册时间:2012/3/29
最后登录:2012/3/29
w763612356 发表于:2012/3/29 14:09:05   | 只看该作者 查看该作者主题 8楼 
做在线知识付费 选科汛云开店

谢谢楼主的分享....












 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
nioka 当前离线

87

主题

0

广播

3

粉丝
添加关注
级别:学前班

用户积分:457 分
登录次数:55 次
注册时间:2009/2/24
最后登录:2017/4/5
nioka 发表于:2012/4/24 14:40:08   | 只看该作者 查看该作者主题 9楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
songlala 当前离线

2436

主题

2

广播

4

粉丝
添加关注
级别:高三年

用户积分:3600 分
登录次数:203 次
注册时间:2012/3/1
最后登录:2015/1/16
songlala 发表于:2012/4/24 15:04:37   | 只看该作者 查看该作者主题 10楼 
 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.23438秒 powered by KesionCMS 9.0