Microsoft.Office.Inter.Excel.dll在調用時可能會出現如下錯誤,具體解決方案如下:
1. 錯誤資訊:檢索 COM 類工廠中 CLSID 為{00024500-0000-0000-C000-000000000046} 的元件時失敗,原因是出現以下錯誤: 80070005。
解決方法如下:
使用DCOM元件服務操作Excel,許可權問題:
A. 使用模擬帳戶,在Web.config文件中加入
<!identityimpersonate="true" userName="administrator"password=""/>;
B. 在DCOM元件服務中給MICROSOFT.EXCEL組件 賦予ASP.NET的操作許可權,具體步驟:
a) 打開開始功能表的運行對話方塊,輸入dcomcnfg命令,確定,這時會彈出元件服務視窗;
b) 展開電腦-〉我的電腦-〉DCOM配置,找到Microsoft Excel應用程式節點;
c) 按一下右鍵-〉屬性,選中“安全”選項,在下面三個項目都選擇“自訂”,並按一下編輯按鈕;
d) 在啟動許可權對話方塊中點擊添加按鈕,選擇“高級”按鈕,點擊“立即查找”,選中“ASPNET”,點擊確定即可(注意:如果是WIN2000,XP,則添加“機器名/ASPNET”用戶,我這裡是以WIN2003為例,WIN2003是添加“NETWORK Service”用戶),並賦予最大許可權。
附加問題:
元件服務-電腦-我的電腦出現紅色向下箭頭(右擊的時候就找不到屬性項了)的解決辦法:
“服務”裡找到這三個服務,都啟動就行了。
DistributedTransaction Coordinator,Remote Procedure Call (RPC),
Security AccountsManager
dtc的啟動經常會遇到問題,有以下解決辦法:
A. 直接運行msdtc –resetlog;
B. 在命令列下運行 msdtc -uninstall,刪除了 msdtc(DistributedTransaction Coordinator)服務;
C. 在“本地連接”的屬性中刪除了 NetBIOS 協定;
D. 重新啟動機器後,在命令列下運行 msdtc -install,安裝 msdtc 服務;
E. 在資料庫伺服器上,在“元件服務”mmc中,依次打開“元件服務”、“電腦”,在“我的電腦”上點右鍵選擇“屬性”。然後選擇“msdtc”選項卡中的“安全配置”,確認選中“網路 DTC 訪問”,並選擇“不要求進行驗證”。
附加問題2:DCOM元件服務中沒有Microsoft ExcelApplication選項(此種情況一般出現在64位元系統)。
解決辦法:
在運行中輸入mmc -32,選擇檔-->添加,刪除管理單元--->添加元件服務,就可以看到Microsoft Excel應用程式節點了。
2. 按以上方法配置完後,打開Excel檔出現以下錯誤提示:
Microsoft Office Excel 不能訪問檔“a.xls”。 可能的原因有:
檔案名稱或路徑不存在;
檔正被其他程式使用;
您正要保存的工作簿與當前打開的工作簿同名。
解決辦法:
Windows 2008 Server x64
添加此資料夾C:WindowsSysWOW64configsystemprofileDesktop;
Windows 2008 Server x86
添加此資料夾C:WindowsSystem32configsystemprofileDesktop;
添加完成後,設置此資料夾的許可權,賦予Everyone完全控制許可權。
3. Excel存放資料夾需要設置相應的控制許可權
注意:如果是WIN2000,XP,則添加“機器名/ASPNET”用戶, WIN Server 2003,
WIN Server2008是添加“NETWORK Service”用戶。
4. excel匯出時”記憶體或磁碟空間不足“錯誤的解決方法
錯誤資訊:記憶體或磁碟空間不足,Microsoft Office Excel 無法再次打開或保存任何文檔。 ? 要想獲得更多的可用記憶體,請關閉不再使用的工作簿或程式。 ? 要想釋放磁碟空間,請刪除相應磁片上不需要的檔。
解決方法:
1 在運行框中輸入“dcomcnfg",打開元件元件服務視窗,
2 元件服務-我的電腦-DCOM配置-MicrosfotExcel Application,右鍵,屬性,標識裡設為"互動式用戶"