|
安裝完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權限即可?!霸L問權限”也一樣處理。
這個錯誤提示通過,運行到$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技術:win2003服務器使用WPS的COM組件的一些問題解決方法,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。