您现在的位置:龙卷风首页 ›› 网络编程 ›› 阅读文章

Asp无组件上传类在IE7/Firefox3中出错

asp 无组件上传类 IE7 FireFox3

一直使用爱雪儿asp无组件上传类来做asp的文件上传。我使用的版本是1.0.0。这个版本使用比较方便,直接包含上传类文件就可以调用了。直到最近才发现,这个上传类在IE7/FireFox3中会出错,出错信息如下:

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

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

出错的原因,是IE7/Firefox3中,上传文件时不再包含文件在本地的完整路径,而只有文件名。这使得原有的文件名提取机制出错。上面的错误,就是因为Instr函数中的参数出错了。受到牵连的还有上传图片时,用JavaScript预览图片的功能。

解决方法:

1、治标方式。

IE7以上版本其实把文件上传是否发送完整的本地路径做成一个选项,在IE的Internet选项中可以设置。如下图:

 

图一,Internet安全选项

图二,完整路径选项设置

由于默认是禁用的,所以会出现问题,把它启用就可以解决问题了。但这是治标的方法,如果网页是面向普通用户的,你不可能要求所有用户都来改变这个设置。

2、治本。治本的方法只能靠改程序了。对于图片预览的,目前我还没有很好的方法获取到图片的本地完整路径,所以只能通过判断浏览器的版本,如果是IE7/FireFox3的版本,就提示不支持预览。对于上传文件功能的判断,问题既然知道原因了,解决的方法自然也就手到擒来了。在操作文件名是,注意是单纯的文件名,而非完整文件路径。

如果需要帮助,请与我联系

下载支持IE7/FF的爱雪儿asp无组件上传类1.0

作者 不见不散 本文仅代表作者观点,与龙卷风资讯网立场无关。

我来说两句

内容/Content