win2003服务器使用WPS的COM组件的一些问题解决方法


Posted in PHP onJanuary 11, 2012

由于COM组件只能在windows上使用,因为程序必须放在windows的服务器上运行。在本地xp系统上搭建安装没任何问题,在服务器win2003上安装,碰到了N个问题,最后还是gump同学出手才解决,整整折腾了不少于10个小时才搞定。

安装完Wps office个人版最新的12012版后,按理说就完成了,但运行程序在服务器上报错如下:

Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `WPS.Application': 拒绝访问。 ' in D:\www\9enjoy.com\hx.php:12 Stack trace: #0 D:\www\9enjoy.com\hx.php(12): com->com('WPS.Application') #1 {main} thrown in D:\www\9enjoy.com\hx.php on line 12

是运行这句就$wps = new COM("WPS.Application");报错。经过一翻查找,在DCOM配置里做了配置,解决了这个提示。

1、打开控制面板 - 管理工具 - 组件服务

2、在组件服务面板中依次打开 控制台根目录 - 组件服务 - 计算机 - 我的电脑 - DCOM 配置

3、找到Kingsoft Writer Application Class(金山的文档应用服务),打开属性窗口,切换到安全标签。将“启动和激活权限”选择自定义,编辑,添加everyone权限即可。“访问权限”也一样处理。

这个错误提示通过,运行到$doc = $wps->Documents->Open($src_filename); 时又出现错误

Fatal error: Uncaught exception 'com_exception' with message 'Error [0x800706be] 远程过程调用失败。 ' in D:\www\9enjoy.com\hx.php:15 Stack trace: #0 D:\www\9enjoy.com\hx.php(15): variant->Open('d:\www\9enjoy.com...') #1 {main} thrown in D:\www\9enjoy.com\hx.php on line 15

在“标识”标签,将启动用户改为交互式用户,又出现了另一个错误提示:

Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `WPS.Application': 因为配置类型不正确,系统无法开始服务器进程。请检查用户名和密码。 ' in D:\www\9enjoy.com\hx.php:15 Stack trace: #0 D:\www\9enjoy.com\hx.php(15): com->com('WPS.Application') #1 {main} thrown in D:\www\9enjoy.com\hx.php on line 15

反复尝试,都不行,包括重装WPS。

后"标识"标签,使用指定用户运行,先使用网站用的用户运行,通不过。再使用管理员账号运行,点确定时也会弹出出错信息。应该是这两个选项(启动用户和指定用户)都无法把这个com组件启动起来。如果用交互式用户,是可以的,就是提示用户名和密码不对:(

后测试中有时出现长时间运行,一直不报错...还有出现过如下错误:
Fatal error: Uncaught exception 'com_exception' with message 'Failed to create COM object `WPS.Application': 服务器运行失败 ' in D:\www\9enjoy.com\hx.php:30 Stack trace: #0 D:\www\9enjoy.com\hx.php(30): com->com('WPS.Application') #1 {main} thrown in D:\www\9enjoy.com\hx.php on line 30

期间还发现,由于执行到$wps->Documents->Open就停了,会在进程中出现一个wps或wpsupdate进程,每刷新一次出现一个。最多一次发现有30多个这类进程,有时还会影响程序,需要手工一个一个删除。

最后,使用了一个很BT的做法,将这个站点的IIS身份验证方式使用administrator管理员账号运行,居然好了!。。。

PHP 相关文章推荐
一个php作的文本留言本的例子(四)
Oct 09 PHP
php创建多级目录代码
Jun 05 PHP
PHP操作MongoDB时的整数问题及对策说明
May 02 PHP
php继承的一个应用
Sep 06 PHP
PHP中使用unset销毁变量并内存释放问题
Jul 05 PHP
ThinkPHP查询中的魔术方法简述
Jun 25 PHP
PHP函数实现分页含文本分页和数字分页
Oct 23 PHP
Zend Framework教程之请求对象的封装Zend_Controller_Request实例详解
Mar 07 PHP
php实现等比例不失真缩放上传图片的方法
Nov 14 PHP
PHP实现限制IP访问的方法
Apr 20 PHP
PHP如何实现订单的延时处理详解
Dec 30 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
Feb 10 PHP
php通过COM类调用组件的实现代码
Jan 11 #PHP
关于IIS php调用com组件的权限问题
Jan 11 #PHP
Uncaught exception com_exception with message Failed to create COM object
Jan 11 #PHP
比file_get_contents稳定的curl_get_contents分享
Jan 11 #PHP
学习使用curl采集curl使用方法
Jan 11 #PHP
PHP 日,周,月点击排行统计
Jan 11 #PHP
php删除页面记录 同时刷新页面 删除条件用GET方式获得
Jan 10 #PHP
You might like
桌面中心(二)数据库写入
2006/10/09 PHP
PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例
2019/03/01 PHP
jQuery前端框架easyui使用Dialog时bug处理
2014/12/05 Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
2015/01/06 Javascript
jquery ui resize 中border-box的bug修正
2015/04/26 Javascript
Javascript 字符串模板的简单实现
2016/02/13 Javascript
JavaScript中利用jQuery绑定事件的几种方式小结
2016/03/06 Javascript
AngularJS中的过滤器filter用法完全解析
2016/04/22 Javascript
webuploader模态框ueditor显示问题解决方法
2016/12/27 Javascript
BootStrap table删除指定行的注意事项(笔记整理)
2017/02/05 Javascript
jQuery插件FusionCharts实现的3D帕累托图效果示例【附demo源码】
2017/03/25 jQuery
Angular.JS中select下拉框设置value的方法
2017/06/20 Javascript
深入浅析Vue 中 ref 的使用
2019/04/29 Javascript
Node.js中console.log()输出彩色字体的方法示例
2019/12/01 Javascript
js实现多图和单图上传显示
2019/12/18 Javascript
[32:26]EG vs IG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[01:07:41]IG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python实例分享:快速查找出被挂马的文件
2014/06/08 Python
python+opencv实现动态物体追踪
2018/01/09 Python
python 中的list和array的不同之处及转换问题
2018/03/13 Python
Python基础教程之利用期物处理并发
2018/03/29 Python
Python比较2个时间大小的实现方法
2018/04/10 Python
完美解决Pycharm无法导入包的问题 Unresolved reference
2018/05/18 Python
python中单例常用的几种实现方法总结
2018/10/13 Python
解决python 无法加载downsample模型的问题
2018/10/25 Python
Python中文件的写入读取以及附加文字方法
2019/01/23 Python
Python程序打包工具py2exe和PyInstaller详解
2019/06/28 Python
Python中求对数方法总结
2020/03/10 Python
使用Matplotlib绘制不同颜色的带箭头的线实例
2020/04/17 Python
改变 Python 中线程执行顺序的方法
2020/09/24 Python
详解用python -m http.server搭一个简易的本地局域网
2020/09/24 Python
Python爬虫逆向分析某云音乐加密参数的实例分析
2020/12/04 Python
html5如何及时更新缓存文件(js、css或图片)
2013/06/24 HTML / CSS
白宫黑市官网:White House Black Market
2016/11/17 全球购物
西班牙购买隐形眼镜、眼镜和太阳镜网站:Lentiamo.es
2020/06/11 全球购物
护理学应聘自荐书范文
2014/02/05 职场文书