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

最近在调试一个过去的项目,asp写的一个无组上传类,以前都测试通过的,本次发布却提示:

ADODB.Stream 错误 ‘800a0bbc‘ 

写入文件失败。 

/UpLoadClass_Dreacom_v3/UpLoadClass.asp,行 703 

发生此错误的系统是:Windows Server 2008 R2

有的还可能提示:ADODB.Stream 错误 30004

开始以为是权限的问题,于是设置文件夹的权限,甚至给了Everyone完全控制的权限,结果还是不行;

相关错误代码行:

stream.SaveToFile fileName, 2

输出文件路径:

response.write "<br />fileName=" & fileName

指定的保存目录:

folderPath=C:\inetpub\wwwroot\UpLoadClass_Dreacom_v3\Demo1\UpLoadFile

临时文件保存位置:
fileName=C:\inetpub\wwwroot\UpLoadClass_Dreacom_v3\Demo1\UpLoadFile\2015\10\2851107108ad_0.tmp 
通过路径可以发现,多了几层目录,这是什么呢?

这涉及到下面的函数:

Public Function GetNewUploadID()
	dim dtstr
	dtstr = Replace(cstr(Date()), "-", "") & CStr(CLng(timer()*1000))
	GetNewUploadID = dtstr & GetRandomCode(20 - Len(dtstr))
End Function

通常我们cstr(Date())得到的数据格式是:2015-10-28,中间的分隔符是减号,而在Windows Server 2008 R2得到的格式是2015/10/28,在执行Server.MapPath时,就把它当成目录来处理了,由于对应的目录不存在,所以导致了这个问题。

找到原因,解决方法就自然明了了,把日期中的“/”也替换掉就可以了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

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

时间: 2024-10-17 14:41:15

ADODB.Stream 错误 '800a0bbc' 写入文件失败的相关文章

ADODB.Stream 错误 &#39;800a0bb9&#39; 参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突

最近在调试一个过去的项目,asp写的,提示: ADODB.Stream 错误 '800a0bb9' 参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突. /UpLoadClass_Dreacom_v3/UpLoadClass.asp,行 635 发生错误的代码行: Stream.Write buff 打印变量长度: Response.write Lenb(buff) 发现变量的长度是0,所以导致这个问题,加上以下条件修正: if Lenb(buff) > 0 then Stream.Wr

Alluxio HA 写入文件失败

Alluxio HA环境,今天发生,用户无法写入文件的情况. 创建文件夹,是正常的.但是最后copyFromLocal 文件的时候,就没有任何反应.最后可以看到这个新建的文件.但是文件size是0. alluxio fs copyFromLocal test.txt /user/mytest/prefix2 最后决定重启一下master看看结果.然后重启,然后...就没有然后了.....Master起不来了!!!! 查看master.log发现问题,刚开始,是正常的应用log file,在 in

iOS 开发之字典写入文件

在最近的开发中阿,遇到一个问题,是我开始没有注意到的问题,某个羡慕后期维护的过程中发现一个bug,这个bug就是关于字典写入文件的.缘由是这样的,我用字典写入文件的方法 BOOL result = [resultDic writeToFile:CityListDataPath atomically:YES]; if (result) { NSLog(@"HYH-写入成功"); }else { NSLog(@"HYH-写入失败"); } 至于这个问题我通过阅读官方文档

PHP error_log()将错误信息写入日志文件

error_log() 是发送错误信息到某个地方的一个函数,在程序编程中比较常见,尤其是在程序调试阶段. bool error_log ( string $message [, int $message_type = 0 [, string $destination [, string $extra_headers ]]] ) 把错误信息发送到 web 服务器的错误日志,或者到一个文件里. message 应该被记录的错误信息.信息长度限制:The default seem to be 1024

百度联盟“获取验证文件失败或文件错误”解决办法

许多朋友都用过百度联盟,不过,我相信好多朋友都会遇到过这种情况,不管你的网站是备-案了还是没备-案,你在申请百度联盟的时候都会遇到网站验证不成功的问题,提示获取验证文件失败或文件错误,请您确认正确放置后,再次点击"完成验证"按钮,如下图: 我以前没有用过百度联盟,不过我以前用过淘宝联盟.前些天我在申请百度联盟的时候需要验证网站权限,就是下载验证文件上传到网站根目录,然后点击验证的. 不过,我发现怎么验证都不成功,我的文件明明也上传到网站的根目录了.其实,对于这个问题我一直就知道怎么解决

C# 将 Stream 写入文件

public void StreamToFile(Stream stream,string fileName) { // 把 Stream 转换成 byte[] byte[] bytes = new byte[stream.Length]; stream.Read(bytes, 0, bytes.Length); // 设置当前流的位置为流的开始 stream.Seek(0, SeekOrigin.Begin); // 把 byte[] 写入文件 FileStream fs = new File

Ubuntu文件写入内容时出现错误 E121:无法打开并写入文件解决方案

在安装某些软件过程中会让你新建个txt或者在输入vim /etc/profile命令时,输入完毕后保存文件时就会报错 E121:无法打开并写入文件解决方案,一般的解决状况就是输入如下命令: :w !sudo tee % //注意要有冒号 这样就可以保存了,但是有时会出现错误,会提示该文件不存在, 我的解决办法就是按照路径,自己在文件夹里建一个文本文档,再输入内容进行保存, 但是得在命令行跳转到建立文本的路径,ls显示一下,有时会多出你所建的文件名加一个“~”, 这个加“~”的文件会对你的安装过程

Linux下中断程序导致写文件失败的分析

案例: 一个普通linux C程序,执行期间会进行多次printf操作,利用bash脚本重定向功能,将stdout重定向到一个另一个文件中去.在运行途中用ctrl+C终止程序,发现定向文件始终为空,即写失败. 分析: 原本以为是bash重定向机制导致的问题,于是将重定向取消,改为使用fprintf,而非printf.即在C程序内部进行写文件.发现问题依旧.(排除fopen打开失败的因素) 仔细观察,发现问题集中在两个层面,一个是ctrl+c到底做了什么,二是写文件操作为什么失败. 首先,ctrl

file_put_contents() ——将一个字符串写入文件

语法: int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] ) 参数 描述 filename 必需. 要被写入数据的文件名. 规定要写入数据的文件.如果文件不存在,则创建一个新文件. data 必需.规定要写入文件的数据.可以是字符串.数组或数据流. string,array 或者是 stream 资源 参数 data 可以是数组(但不能为多维数组),这就