通过远程连接客户的服务器,状况如下:
1. 服务器已安装Microsoft Excel;
2. 服务器进程里没有Excel程序运行;
3. 今天天气很热,但是跟这个没有关系^_^!!
在原来的OutExcel.class.asp程序里加入了一些检验代码,判断是否支持某个组件,如下
'判断系统是否支持strClassString组件
Function IsObjInstalled(strClassString)
On Error Resume Next
IsObjInstalled = False
Err = 0
Dim xTestObj
Set xTestObj = Server.CreateObject(strClassString)
If Err = 0 Then IsObjInstalled = True
Set xTestObj = Nothing
Err = 0
End Function
在set xlsApp = Server.CreateObject("Excel.Application")之前加入检验代码,如下
if IsObjInstalled("Excel.Application") = False then
response.Write("<script>alert('创建Excel.Application失败!');history.back()</script>")
response.End()
end if
结果运行时确实弹出了“创建Excel.Application失败!”的错误信息,判断应该可能是Excel.Application权限的问题,具体我也不太清楚,上网查了一下,结果在蓝色找到一个ASP操作Excel技术总结的帖子,偷懒一下,直接把重要部分偷过来吧,嘿嘿。
服务器端环境配置还有两个偶然的发现是:
1.笔者开发机器上原来装有金山的WPS2002,结果Excel对象创建始终出现问题,卸载WPS2002后,错误消失。
2.笔者开发ASP代码喜欢用FrontPage,结果发现如果FrontPage打开(服务器端),对象创建出现不稳定现象,时而成功时而不成功。扩展考察后发现,Office系列的软件如果在服务器端运行,则Excel对象的创建很难成功。
服务器端还必须要设置的一点是COM组件的操作权限。在命令行键入“DCOMCNFG”,则进入COM组件配置界面,选择MicrosoftExcel后点击属性按钮,将三个单选项一律选择自定义,编辑中将Everyone加入所有权限。保存完毕后重新启动服务器。
客户端的环境配置没发现什么特别讲究的地方,只要装有Office和IE即可,版本通用的好象都可以。
OK,问题解决。
热门信息
阅读 (198)
1 独特的随机字母阅读 (171)
2 检查和设置IIS服务器正确的权限阅读 (163)
3 asp网站伪静态化URL Rewrite中的httpd.ini伪静态化规则编写方法阅读 (161)
4 ASP-对象阅读 (160)
5 随机图像