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


    现象:写入文件失败,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

    转自:http://blog.csdn.net/cnkivm/article/details/5620548

  • 相关阅读:
    使用Chrome开发者工具研究JavaScript的垃圾回收机制
    Java JDK目录下的jmap和jhat工具的使用方式
    Java注解@Cacheable的工作原理
    使用Java JUnit框架里的@Rule注解的用法举例
    使用Java JUnit框架里的@SuiteClasses注解管理测试用例
    Java JUnit框架里@Category注解的工作原理
    使用SAP CRM mock框架进行单元测试的设计
    将ABAP透明表的定义(元数据)解析出来导入到剪切板(clipboard)里
    SAP ABAP Netweaver里的胖接口(fat interface)
    关于STM32的FLASH操作【转载】
  • 原文地址:https://www.cnblogs.com/yiwd/p/3013397.html
Copyright © 2020-2023  润新知