之前我一直使用ASP无组件上传类来上传文件。可是今天又个客户反映说。不能上传。出现错误。,但在我电脑上测试没问题。后来发现客户用的是IE8浏览器
因而开始找解决方法安全
错误以下:
Microsoft VBScript 运行时错误 错误 '800a0005' 无效的过程调用或参数: 'Instr'
出错的缘由,是IE7/Firefox3中,上传文件时再也不包含文件在本地的完整路径,而只有文件名。这使得原有的文件名提取机制出错。上面的错误,就是由于Instr函数中的参数出错了。受到牵连的还有上传图片时,用JavaScript预览图片的功能。
解决方法:
一、治标方式。 IE7以上版本其实把文件上传是否发送完整的本地路径作成一个选项,在IE的Internet选项中能够设置。以下图:函数
二、治本。 治本的方法只能靠改程序了。对于图片预览的,目前我尚未很好的方法获取到图片的本地完整路径,因此只能经过判断浏览器的版本,若是是IE7/FireFox3的版本,就提示不支持预览。对于上传文件功能的判断,问题既然知道缘由了,解决的方法天然也就手到擒来了。在操做文件名是,注意是单纯的文件名,而非完整文件路径。工具