博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
突破ewebeditor中无组件200K上传
阅读量:4502 次
发布时间:2019-06-08

本文共 1425 字,大约阅读时间需要 4 分钟。

问题是这个样子的:我把PDF文档转换为FLASH格式,想上传到网站显示,在后台用的是ewebeditor编辑器,已经设置ewebeditor的上传上限是100M了,结果还是上传不了,提示格式不对,这个明显是获取二进制流的时候没有完全获取到,查了一下,IIS无组件默认限制为200K上传,实验了一下,果然是190K是可以通过的.很多网友的方法是修改IIS设置,服务器又不是我的,我怎么修改啊,所以我选择分块接收文件.
什么激发了我呢?理由有两个,一个是ewebeditor官方文档中自己有提到大文本处理的方法,思想是一样的,第二个理由就是我以前做过这个事情
其实蛮简单的,具体过程是
1.打开ewebeditor/asp/upfileclass.asp
2.找到oUpFileStream.Write Request.BinaryRead(Request.TotalBytes)这句代码
3.注释这条代码,并用下面的代码替换
   Dim nTotalBytes, nPartBytes, ReadBytes
  ReadBytes = 0
  nTotalBytes = Request.TotalBytes
  Do While ReadBytes < nTotalBytes
   nPartBytes = 64 * 1024
   If nPartBytes + ReadBytes > nTotalBytes Then
    nPartBytes = nTotalBytes - ReadBytes
   End If
   oUpFileStream.Write Request.BinaryRead(nPartBytes)
   ReadBytes = ReadBytes + nPartBytes
  Loop
4.保存,测试,搞定
下面具体说说过程吧
当提交表单的时候是指向upload.asp的,通过接收不同的参数,做不同的事情,里面有Sub DoSave()这个过程,又调用了DoUpload_Class()这个过程,这个过程中使用了无组件上传类的方法
先创建实例Set oUpload = New upfile_class
然后获取数据oUpload.GetData nAllowSize*1024
看看这个GetData方法,传入参数是一个允许的文件最大值,大家肯定明白意思了.在GetData方法中,创建一个ASP内置组件
Set oUpFileStream = Server.CreateObject("ADODB." & "Stream")
oUpFileStream.Type = 1
oUpFileStream.Mode = 3
oUpFileStream.Open
然后就是开始通过这个oUpFileStream 接收字节流了
 nTotalBytes = Request.TotalBytes '获取字节长度
nPartBytes = 64 * 1024 '设置块大小为64K
oUpFileStream.Write Request.BinaryRead(nPartBytes) '按块读取
ReadBytes = ReadBytes + nPartBytes '记录已经读取的字节长度,方便判断剩余字节
 
帮朋友网站做个外链
甘露青鱼

转载于:https://www.cnblogs.com/lcwx2008/archive/2012/03/04/2378944.html

你可能感兴趣的文章
英文外包
查看>>
ajax基础知识
查看>>
Activity与Service之间交互并播放歌曲
查看>>
在使用python3.7+channels时会出现rsync错误
查看>>
这一篇是运算符。。
查看>>
在ubuntu16.04+python3.5情况下安装nltk,以及gensim时pip3安装不成功的解决办法
查看>>
windows系统的安装时间怎么查看
查看>>
20180911-Java实例01
查看>>
Javascript Event
查看>>
sql语句 字段的赋值
查看>>
解决IOS safari下滑动的“橡皮筋”效果
查看>>
asp.net 得到一个文件夹下的所有文件夹及子文件夹名,得到所有文件名,文件大小,文件夹大小...
查看>>
从keystore(jks)文件中提取私钥
查看>>
调整数组顺序使奇数位于偶数前面
查看>>
css3的3D和2D
查看>>
简单的响应式布局的实现
查看>>
jQuery(属性操作)
查看>>
Python之路【第九篇】:Python面向对象
查看>>
background和background-image一点小区别
查看>>
ASCII码对照表
查看>>