windows server 2008+iis7 写入文件失败 ADODB.stream错误800a0bbc
15 Jul 2014-
今天因为服务器更换,需要将之前win 2003 上的数据全部迁移到win2008上,因为系统的升级,iis也从iis6 升级到iis7
-
asp网站部署成功后,上传文件一直出现 Server 对象 错误 ‘ASP 0177 : 800401f3’ 文件上传失败
-
我为了解决这个问题花了一个下午,写这篇文章只想让大家不要在这件事上花费太多的时间。一下是我在网上找到的解决方案
- 系统没有开启FSO组件
1、首先在系统目录中查找scrrun.dll,如果存在这个文件,请跳到第三步,如果没有,请执行第二步。 2、在系统安装盘i386目录中找到scrrun.dl_,用winrar解压缩,得scrrun.dll,然后复制到你的系统目录 c:windowssystem32目录中。 3、在运行中输入cmd打开命令窗口,输入cd 系统目录\windows\system32 回车,在输入regsvr32 scrrun.dll 回车,显示注册成功。 <h2> PS : 我尝试过过次注销,启用,但是没有解决问题</h2>
- 权限问题
1、右击网站所在文件夹--安全选项,加入everyone,internet来宾帐号(IUSR...)用户确定,然后重新启动IIs。 <h2>PS: 已尝试,失败</h2>
3.如果没有解决问题,建议重装IIS,还有问题的情况下就只能重装系统了。
<h2>PS:由于这解决方法损失回很大,所以没有尝试</h2>
我的解决方案
-
只要为“2010/5/24”中的“/”替换为“”(空)即可
- 我在网上找了很多相关的解决方法,说是文夹权限或是目录问题,很显然碰到的并非为权限问题.看了很多解决方法都没用,在差不多绝望的时候,竟然看到一篇文章说windows2008显示系统时间的格式竟然是:2010/5/24,而并非是以前的2010-5-24,由于重命名上传的文件是按时间来命名的,本要求为
- 2010524.xls,但到windows2008平台上最后变成了2010/5/24.xls,这样则会有一个问题,就是会被当成文件夹和路径处理,最终会导致了真正的不存在目录,最后会写入出错。
-
如果可以,你可以试一下response.write 写出整个另存为的路径出来即可看到如:/uploadfile/2010/5/24.xls,而且实际应该为::/uploadfile/2010524.xls才是正确的
原uploadsave.asp中的函数为:
function makefilename(fname) fname = date() fname = replace(fname,"-","") fname = replace(fname," ","") fname = replace(fname,":","") makefilename=fname&".xls" end function
在其中加上一句:fname = replace(fname,”/”,””)
最后为:
function makefilename(fname) fname = date() fname = replace(fname,"-","") fname = replace(fname,"/","") fname = replace(fname," ","") fname = replace(fname,":","") makefilename=fname&".xls" end function
PS: 你的程序中不一样有function这个函数,但是你要记住将上传文件的分隔符“/” 转换为“ ”