企业动态关于我们联系我们
   建站常识
 域名常识
域名解析问题集锦
域名基础知识概述
域名dns问题集锦
国内域名转入业务问题集锦
 空间常识
虚拟主机产品说明书
FTP上传注意事项
ftp操作常识问题集锦
网站无法上传怎么办?
 邮局常识
什么是电子邮件地址?
企业邮箱与免费邮箱的区别,企业邮箱的优点?
什么是SMTP?
什么是POP3?
 建站常识
企业如何建好网络营销
三种类型企业网站的作用
如何推广B2C独立网店
做网站快速成功的九个步骤
 SEO 知识
什么是SEO?
什么是SPAM?
SEO和SPAM有什么区别?
影响SEO的几点常识

首页技术交流ASP
如何解决ewebeditor上传图片200k限制??超级精准   2025/3/31   返回前页
问题是这个样子的:我把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 '记录已经读取的字节长度,方便判断剩余字节
本站搜索关键词:南京网站建设、南京建站、南京SEO推广、南京网络公司
   广告也精彩
版权所有:南京欧万网络服务工作室 www.owon.cn sitemap