欢迎来到代码驿站!

当前位置:首页 >

windows2008+iis7无组件上传写入文件失败ADODB.Stream 错误 800a0bbc问题

时间:2021-08-06 09:05:49|栏目:|点击:

现象:写入文件失败,ADODB.Stream 错误 800a0bbc

条件:在已排除一般的解决方法文件夹权限后,并且服务器为windows2008

希望写这文章可以让大家避免浪费太多时间,最快地解决问题。

一个ASP程序用到无组件上传,在本地XP SP3 IIS5.1及在Windows Server 2003 + IIS6.0上测试均为可以正常上传.到把程序放了windows2008+IIS7.0上发现内部服务器错误500,最后我把其调为可显示详细错误信息,显示为:

写入文件失败,ADODB.Stream 错误 800a0bbc

我在网上找了很多相关的解决方法,说是文夹权限或是目录问题,很显然碰到的并非为权限问题.看了很多解决方法都没用,在差不多绝望的时候,竟然看到一篇文章说windows2008显示系统时间的格式竟然是:2010/5/24,而并非是以前的2010-5-24,由于重命名上传的文件是按时间来命名的,本要求为

2010524.xls,但到windows2008平台上最后变成了2010/5/24.xls,这样则会有一个问题,就是会被当成文件夹和路径处理,最终会导致了真正的不存在目录,最后会写入出错。

如果可以,你可以试一下response.write 写出整个另存为的路径出来即可看到如:***/uploadfile/2010/5/24.xls,而且实际应该为::***/uploadfile/2010524.xls才是正确的 

解决方法:

只要为“2010/5/24”中的“/”替换为“”(空)即可:

原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

上一篇:正则表达式匹配${key}并在Java中使用的详细方法

栏    目:

下一篇:docker 容器上编译 go 程序提示找不到文件问题

本文标题:windows2008+iis7无组件上传写入文件失败ADODB.Stream 错误 800a0bbc问题

本文地址:http://www.codeinn.net/misctech/164485.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有