C#讀取Word文檔異常處理解析
C#讀取Word文檔是項目中要實現(xiàn)的一個功能,在服務(wù)器端打開一個Word模版文件,修改其內(nèi)容后再下載到客戶端使用,在Asp.net頁面中建立Microsoft.Office.Interop.Word.Application對象時出現(xiàn)“拒絕訪問”的錯誤,提示信息如下:
C#讀取Word文檔異常:拒絕訪問
說明: 執(zhí)行當(dāng)前 Web 請求期間,出現(xiàn)未處理的異常。請檢查堆棧跟蹤信息,以了解有關(guān)該錯誤以及代碼中導(dǎo)致錯誤的出處的詳細(xì)信息。
異常詳細(xì)信息: System.UnauthorizedAccessException: 拒絕訪問。
ASP.NET 未被授權(quán)訪問所請求的資源。請考慮授予 ASP.NET 請求標(biāo)識訪問此資源的權(quán)限。ASP.NET 有一個在應(yīng)用程序沒有模擬時使用的基進(jìn)程標(biāo)識(通常,在 IIS 5 上為 {MACHINE}\ASPNET,在 IIS 6 上為網(wǎng)絡(luò)服務(wù))。
如果應(yīng)用程序正在通過<identity impersonate="true"/>模擬,則標(biāo)識將為匿名用戶(通常為 IUSR_MACHINENAME)或經(jīng)過身份驗證的請求用戶。
若要授予 ASP.NET 對文件的寫訪問權(quán),請在資源管理器中右擊該文件,選擇“屬性”,然后選擇“安全”選項卡。單擊“添加”添加適當(dāng)?shù)挠脩艋蚪M。突出顯示 ASP.NET 帳戶,選中所需訪問權(quán)限對應(yīng)的框。
1、在命令行中輸入:dcomcnfg,會顯示出“組件服務(wù)”管理器
2、打開“組件服務(wù)->計算機(jī)->我的電腦->DCOM 配置”,找到“Microsoft Word文檔”,單擊右鍵,選擇“屬性”
3、在“屬性”對話框中單擊“安全”選項卡,在“啟動和激活權(quán)限”處選擇“自定義”,再單擊右邊的“編輯”,在彈出的對話框中添加“ASPNET”(在IIS6中是NETWORD SERVICE)用戶,給予“本地啟動”和“本地激活”的權(quán)限,單擊“確定
4、在“屬性”對話框中單擊“安全”選項卡,在“訪問權(quán)限”處選擇“自定義”,再單擊右邊的“編輯”,在彈出的對話框中添加“ASPNET”(在IIS6中是NETWORD SERVICE)用戶,給予“本地訪問”的權(quán)限,單擊“確定”,關(guān)閉“組件服務(wù)”管理器。
C#讀取Word文檔異常:消息篩選器顯示應(yīng)用程序正在使用中
說明: 執(zhí)行當(dāng)前 Web 請求期間,出現(xiàn)未處理的異常。請檢查堆棧跟蹤信息,以了解有關(guān)該錯誤以及代碼中導(dǎo)致錯誤的出處的詳細(xì)信息。
異常詳細(xì)信息: System.Runtime.InteropServices.COMException: 消息篩選器顯示應(yīng)用程序正在使用中。
1、在命令行中輸入:dcomcnfg,會顯示出“組件服務(wù)”管理器
2、打開“組件服務(wù)->計算機(jī)->我的電腦->DCOM 配置”,找到“Microsoft Word文檔”,單擊右鍵,選擇“屬性”
3、在“屬性”對話框中單擊“標(biāo)識”選項卡,選擇“交互式用戶””,關(guān)閉“組件服務(wù)”管理器。
修改好之后如果還不行,在 組件服務(wù)->計算機(jī)->我的電腦 上右鍵 "停止MS DTC"服務(wù),然后再重啟就可以了
C#讀取Word文檔時的異常相關(guān)分析就向你介紹到這里,希望對你處理實際開發(fā)工作中的C#讀取Word文檔有所掌握。
【編輯推薦】