天天看點

asp.net使用office遇到的權限問題解決方案

asp.net中使用excel和word時碰到了拒絕通路的問題。

excel錯誤:

檢索 COM 類工廠中 CLSID 為 {00020812-0000-0000-C000-000000000046} 的元件失敗,原因是出現以下錯誤: 8000401a 因為配置辨別不正确,系統無法開始伺服器程序。請檢查使用者名和密碼。 (異常來自 HRESULT:0x8000401A)。 

word錯誤:

檢索 COM 類工廠中 CLSID 為 {000209FF-0000-0000-C000-000000000046} 的元件失敗,原因是出現以下錯誤: 8000401a 因為配置辨別不正确,系統無法開始伺服器程序。請檢查使用者名和密碼。 (異常來自 HRESULT:0x8000401A)。 

首先這中問題全都是權限所導緻,解決的辦法隻要配置權限就可以了。不光對excel和word有用,對所有的office産品都有效果。

進入正題,首先,在運作中輸入dcomcnfg打開元件服務管理器->元件服務->我的電腦->DCOM->找到對應的Microsoft excel applicotion/Microsoft word 97-2003文檔,然後右鍵屬性->打開安全頁簽->

(1)    啟動激活權限->選中自定義->編輯->添加Network service,EveryOne,interactive,administrator,Iusr->選中本地啟動和本地激活;

(2)    通路權限->選中自定義->編輯->添加Network service->選中本地通路;

(3)    辨別-> 互動試使用者(如果互動式使用者不好用,可以選擇下拉使用者,填寫使用者名和密碼,并且在web.config中的<system.web>節點中添加

<identity impersonate="true"userName="YITONGYU\Administrator" password="[email protected]"/>  使用者名和密碼要對應起來);

(4) 如果還不可以通路,則在運作中輸入inetmgr打開iis管理器,選中web應用程式對應的程式池,把辨別設定為 Local Service或Network Service;