調用office Word Com 組件,提示權限不足處理


最近一直在處理一個項目,項目主要功能與Office-Word 有關,主要涉及到文本內容編輯與樣式設置等相關內容。因項目依賴office 相關dll,需要兼容多種Office 版本(office 2007/2010/2016)(主要在Windows7/10下使用)。項目使用Winform,采用webBrowser嵌入weboffice 形式,調用服務進行功能實現。

在使用初期,發現服務無法正常使用,日志記錄:word 對象無法打開文件,可能文件損壞,或權限不足。

查閱資料,定位為office的 Word  com組件權限不夠,需要處理調用的組件權限。

先在安裝office 32位的環境上測試:

1、打開 Win+R  ,輸入 comexp.msc -32 ,然后 回車:

2、就可以看到 “組件服務” 窗口;依次選擇打開 : 控制台根節點==》組件服務==》計算機==》我的電腦==》DCOM 配置==》找到Microsoft Office Word 97 - 2003 文檔  

3、==》選擇 Microsoft Office Word 97 - 2003 文檔  ,右擊選擇  屬性。按下面操作步驟進行配置。

在安全選項卡中,依次編輯 啟動和激活權限、訪問權限、配置權限;==》選擇自定義, 點擊 編輯==.》組或用戶名 ,添加 everone 權限((授予)勾選所有system 權限)==》確定。

 4、==》選擇 標識 ,更改 運行賬戶為 交互式用戶==》 應用/確定 。配置完成。

 

 

附:

寫到這里,Com 組件權限配置基本結束了。

這里有幾個問題:

1、如果安裝的是Office 64 位出現這種情況怎么辦?

2、如果我不使用Windows 命令能否操作?

對於問題1,暫時沒有很好的解決方案;目前是計划后期更改程序底層Com 組件的功能依賴,使程序在Windows 10下不依賴Office-Word  的Com組件;因為測試發現,在Windows10 下配置com 組件后,功能很不穩定。在安裝office 32 位的Windows 10系統下,測試發現Com 組件的屬性標識改為啟動用戶能夠正常使用一段時間,過段時間,屬性標識再改成 交互式用戶就又正常了。(64位Office 下 命令打開Com  組件:  (Win+R )+Dcomcnfg==》 回車 查看方式與 32 位一致。)如果有遇到類似問題解決的,歡迎評論。

 

 

問題2: 打開Com  組件的方式很多: 可以直接在控制面板進行打開:控制面板==》管理工具==》組件服務==》組件服務列表中:選擇組件服務==》計算機==》我的電腦==》DCOM配置。(以安裝32 位Office  的環境為例,我通過這種控制面板方式打開的Word com組件中:

            Microsoft Word 97 - 2003 文檔的屬性中 常規:本地路徑為空,身份驗證級別 :無;

                          位置選項卡中 : 在此計算機上運行應用程序 置灰,無法勾選

非管理員用戶:administrator 用戶下新建的其他用戶,權限隸屬於 administrator。

(Win+R )+Dcomcnfg==》 回車   --打開64位Office 的Com 組件。

(Win+R )+comexp.msc -32==》 回車   --打開32位Office 的Com 組件。

 

上面為處理過程,如有描述不合理之處,請大家多多指教。

如果您覺得本文對您有幫助,歡迎點擊“推薦”按鈕,您的“推薦”將是我最大的寫作動力!歡迎轉載,轉載請注明出處。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM