重装更改目录为e盘后,上传文件出现问题。解决方法:
调用adodb.stream的savetofile方法时发生错误, ADODB.Stream 错误 800a0bbc 写入文件失败。(msxml3.dll 800c0005)
原因可能是:
可能需要注册ADODB.Stream组件
regsvr32 "C:\Program Files\Common Files\System\ado\msado15.dll"
及Regsvr32 %windir%\system32\msxml3.dll
另外需确认使用的url 有效并可访问
1、你要保存的文件名已存在,而未设置savetofile方法的覆盖属性。
2、路径没有用server.MapPath()映射,这种情况下:
如果路径为绝对路径,则发生上面的问题:写入文件失败。
如果路径为相对路径,则会保存到相对于:c:\\windows\\system32的路径。(本机测试结果)。
3、和错误 '80070070' 一样,空间不足, 引起这个800a0bbc错误。
4、服务器目录不支持写入,或者需要写入的目录不存在 。
在使用化境的上传组件,若网站在服务器的根目录,通常是不会遇到此类问题的,遇到此问题往往是网站是以二级目录方式存放在服务器IIS内,化境的上传路径默认是根目录,因此必须修改化境的上传保存文件的路径,也就是提示出错的ASP网页ManageAddSave.asp→我的出错网页名),而不是提示 “dr.SaveToFile FullPath,2”写入出错所在的文件(UpFile.inc.inc→我的化境无组件上传文件名),将提示出错的网页打开,修改上传文件保存路径 “formPath="/UploadFile/NewsFile"'得到上传目录”,如:你的网站存放的二级目录为‘web2’,路径则改为:
“formPath="/web2/UploadFile/NewsFile"'得到上传目录”,至此,问题解决上传成功!
5、老问题有出现,这次的原因是上传的过程中,server.mappath 中上传目录前不能加“/”,原来是 “/upload/11111”改为 "upload/1111"
6、2009年6月12日调试ll上机考试,又出现这个错误,总结原因是上传目录formpath为“test/upload/”,因为本次虚拟目录设置为test路径,所以相应修改:
upfile.asp
1) formpath=“test/upload/”,--> formpath=upload/"
2) if fso.FolderExists("e:/jiaoling-zuoye/javatest/test/upload/"&session("CurUserId"))=false then
fso.CreateFolder("e:/jiaoling-zuoye/javatest/test//upload/"&session("CurUserId"))
end if
注意虚拟目录对应文件夹的位置修改e:/jiaoling-zuoye/javatest