Microsoft VBScript 运行时错误 错误 '800a0005'

Microsoft VBScript 运行时错误 错误 '800a0005' 


无效的过程调用或参数: 'Chr' 


/jysx/admin_upload.inc,行 75 


昨天给公司服务器重做了一下系统,遇到Asp附件无法上传,之前服务器上使用好好的,怎么重做了就不正常了,于是一番google,baidu,下面将解决办法送出,帮助碰到该问题的朋友少走弯路:

 1,权限问题

      请确保您所上传文件的文件夹"来宾用户"有可写入的权限,有的是存入数据库的,也要有修改权限.

 2,文件大小限制

      IIS 6 出于安全考虑, 默认最大请求200K(也即最大提交数据限额为200KByte, 204800Byte). 

      解决办法:  
      关闭 IIS Admin Service 服务
      打开 \Windows\system32\inesrv\metabase.xml
      修改 ASPMaxRequestEntityAllowed 的值为自己需要的, 默认为 204800
      启动 IIS Admin Service 
      修改之后,同时需要修改machine.config文件
      Asp.net中,上传文件的默认大小是4096 KB,也就是4M,不过你可以在Web.config中更改这个数据。通常更常用的的方法是直接修改       C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\CONFIG目录下的 machine.config文件(Framework版本会不同,你用什么版本就进什么版本的目录),查找httpruntime在这一行将maxRequestLength的值改为理想的值,比如想要8M,就输入8192。

 3,中文系统,安装的IIS的英文补丁

     经过检查,发现客户之前使用的主机是 windows 2003中文版,后来改换成windows英文版的空间,结果就出错了.

    一般呢,系统升级了IIS或者打过补丁后有时也会出现同样的问题,我们只要在ASP文件前加上一段代码

    <!--   must   be   fist   line   in   ASP   -->   

    <%   @LCID=4100   %>   

 4,语言问题

     在控制面板里把区域设置设置为【中国】

 5,日期,时间问题

     在控制面板里把区域和语言选项,区域选项里面,设置时间格式为:H:mm:ss,并在控制面板"日期时间“更改时区为北京.(之所以改这里,是因为有的附件传上去是用时间命名的,如果时间格式有错,会导致程序报错)

 6,上传的文件使用的中文名称或路径

     使用ASP无组件上传的话,因为不支持中文,所以需要检查上传路径上是否包含中文. 

 7,报“Microsoft VBScript 运行时错误 错误 '800a0005'  无效的过程调用或参数: 'chr' ”错误(我的属于这种问题)

     Microsoft VBScript runtime error '800a0005' Invalid procedure call or argument: 'Chr' /admin/inc/UPLOAD.INC,

     line 75 出现如此错误可能是服务器用的是英文版本,因为 Chr 函数返回 String,其中包含有与指定的字符代码相关的字符 。

     相关语法:Chr(charcode) 必要的 charcode 参数是一个用来识别某字符的 Long。说明:0 到 31 之间的数字与标准的非打印 ASCII 代码相同。

     例如,Chr(10) 可以返回换行字符。charcode 的正常范围为 0 – 255。然而,在 DBCS 系统,charcode 的实际范围为 -32768 到 65535。 注意: ChrB 函数作用于包含在 String 中的字节数据。ChrB 总是返回一个单字节,而不是返回一个字符,一个字符可能是一个或两个字节。ChrW 函数返回包含 Unicode 的 String,若在不支持 Unicode 的平台上,则其功能与 Chr 函数相同。

     所以把出错的line75行代码:stemp=stemp&chr(AscW(ChrB(AscB(upfile_5xSoft_Stream.Read(1)))&ChrB(c))) 中的chr换成chrw就可以啦

这个错误通常是指在执行Microsoft VBScript脚本时,脚本尝试创建一个对象,但由于没有相应的权限,所以失败了。其中错误代码'800a0046'表示权限被拒绝。 这个错误通常是由于以下原因之一导致的: 1. 用户权限不足:如果脚本运行时使用的用户没有足够的权限来创建该对象,则会出现此错误。以管理员身份运行脚本或将用户添加到具有适当权限的组中可能会解决此问题。 2. 安全设置:某些安全设置可能阻止脚本创建对象。确保安全设置允许脚本创建所需的对象。您可能需要联系系统管理员以获取更多帮助。 3. 权限设置:系统上的权限设置可能阻止脚本创建对象。检查并确保具有足够的权限来创建对象。 4. 组件未注册:如果脚本尝试创建的对象是一个已安装但未注册的组件,则可能会引发此错误。确认所需的组件是否已正确注册,并确保该组件的路径正确。 5. 文件或目录权限:如果脚本尝试将文件或目录写入到没有写入权限的位置,则可能会出现类似的错误。检查所需文件或目录的权限,并确保脚本具有足够的权限来进行写入操作。 要解决这个问题,您可以尝试以下几项措施: 1. 使用具有管理员权限的用户来运行脚本。 2. 检查安全设置和权限设置,确保脚本具有足够的权限。 3. 如果涉及到组件,确认组件是否已正确注册,并确保路径正确。 4. 检查文件或目录的权限,确保脚本具有足够的权限进行写入操作。 如果以上步骤没有解决问题,您可能需要进一步研究特定的错误和环境,并可能需要咨询系统管理员或开发者以获取更多帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值