程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> Asp.Net中Excel操作權限的問題

Asp.Net中Excel操作權限的問題

編輯:關於ASP.NET

近日在打開原來寫的一個網頁程序運行時,出現了Excel操作權限的問題,具體的說就是在代碼中調用下面這段與Excel操作有關的語句時,

Application curExcelApp = new ApplicationClass();

提示權限不足,具體的提示內容如下:

檢索 COM 類工廠中 CLSID 為 {00024500-0000-0000-C000-000000000046} 的組件時失敗,原因是出現以下錯誤: 80070005。

說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。 異常詳細信息: system.UnauthorizedAccessException: 檢索 COM 類工廠中 CLSID 為 {00024500-0000-0000-C000-000000000046} 的組件時失敗,原因是出現以下錯誤: 80070005。 ASP.NET 未被授權訪問所請求的資源。請考慮授予 ASP.NET 請求標識訪問此資源的權限。ASP.NET 有一個在應用程序沒有模擬時使用的基進程標識(通常,在 IIS 5 上為 {MACHINE}ASPNET,在 IIS 6 上為網絡服務)。如果應用程序正在通過 <identity impersonate="true"/> 模擬,則標識將為匿名用戶(通常為 IUSR_MACHINENAME)或經過身份驗證的請求用戶。 要將 ASP.NET 訪問權限授予某個文件,請在資源管理器中右擊該文件,選擇“屬性”,然後選擇“安全”選項卡。單擊“添加”添加適當的用戶或組。突出顯示 ASP.NET 帳戶,選中所需訪問權限對應的框。 源錯誤:

行 533:    //創建Excel信息    

行 534:    object missing = system.Reflection.Missing.Value;

行 535:    Application curExcelApp = new ApplicationClass();

行 536:    curExcelApp.Application.DisplayAlerts = false;

行 537:    Workbook curWorkBook = curExcelApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);

原來碰到過這種情況,知道是由於Excel的DCom組件權限不足所引起的,所以按照原來的步驟進行設置,如下所示:

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

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

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

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

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

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

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved