導出Excel出錯:檢索 COM 類工廠中 CLSID 為 {00024500-0000-0000-C000-000000000046} 的組件失敗


 

導出Excel程序在本機正常,上傳服務器,再測試時,出錯很多 。 

錯誤:

無法將類型為“Microsoft.Office.Interop.Excel.ApplicationClass”的 COM 對象強制轉換為接口類型“Microsoft.Office.Interop.Excel._Application”。此操作失敗的原因是對 IID 為“{000208D5-0000-0000-C000-000000000046}”的接口的 COM 組件調用 QueryInterface 因以下錯誤而失敗: 不支持此接口 (異常來自 HRESULT:0x80004002 (E_NOINTERFACE))。

異常詳細信息: System.UnauthorizedAccessException: 拒絕訪問。 

未授權此 ASP.NET 進程訪問所請求的資源。出於安全原因,默認的 ASP.NET 進程標識為“{machinename}\ASPNET”,它只具有有限的特權。請考慮授予該 ASP.NET 進程標識訪問此資源的權限


解決方案:

1:在服務器上安裝office的Excel軟件.

2:在"開始"->"運行"中輸入dcomcnfg.exe啟動"組件服務"

3:依次雙擊"組件服務"->"計算機"->"我的電腦"->"DCOM配置"

4:在"DCOM配置"中找到"Microsoft Excel 應用程序",在它上面點擊右鍵,然后點擊"屬性",彈出"Microsoft Excel 應用程序屬性"對話框

5:點擊"標識"標簽,選擇"交互式用戶"

6:點擊"安全"標簽,在"啟動和激活權限"上點擊"自定義",然后點擊對應的"編輯"按鈕,在彈出的"安全性"對話框中填加一個"NETWORK SERVICE"“IUSR”用戶(注意要選擇本計算機名),並給它賦予"本地啟動"和"本地激活"權限.

7:依然是"安全"標簽,在"訪問權限"上點擊"自定義",然后點擊"編輯",在彈出的"安全性"對話框中也填加一個"NETWORK SERVICE"“IUSR”用戶,然后賦予"本地啟動"“本地激活”權限.

8.依然是“安全”標簽,在“配置權限”上選擇自定義,然后點擊”編輯“,在彈出的”安全性“對話框中也添加"NETWORK SERVICE"“IUSR”用戶,賦予完全控制盒讀取權限。 

注:在XP系統中還要添"加機器名/ASPNET"用戶的上述權限。

 


免責聲明!

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



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