ASP.NET操作Word的IIS權(quán)限設(shè)置
更新時(shí)間:2011年02月14日 22:12:46 作者:
檢索 COM 類工廠中 CLSID 為 {00024500-0000-0000-C000-000000000046} 的組件時(shí)失敗,原因是出現(xiàn)以下錯(cuò)誤: 80070005。
ASP.NET賬號(hào)在默認(rèn)情況下是沒有權(quán)限操作Microsoft Office對象的,如果不進(jìn)行權(quán)限的配置,代碼會(huì)拋出類似以下的異常:
檢索 COM 類工廠中 CLSID 為 {00024500-0000-0000-C000-000000000046} 的組件時(shí)失敗,原因是出現(xiàn)以下錯(cuò)誤: 80070005。
這樣給Asp.NET操作Microsoft Office對象帶來了一定的困難。但我們還是要想辦法來進(jìn)行Office對象的操作。下面簡單介紹一下本人在開發(fā)過程中曾經(jīng)使用過的方法:
方法1:配置Web.Config文件,在每次請求時(shí)模擬本地系統(tǒng)的賬戶。
具體操作:在Web.Config文件中添加如下節(jié)點(diǎn):
<identity impersonate="true" userName="accountname" password="password" />
其中:userName是要模擬的本地賬號(hào),password是該賬號(hào)的密碼。
方法2:在“DCOM配置”中,為IIS賬號(hào)配置操作Word(其他Office對象也一樣)的權(quán)限。
具體操作:“組件服務(wù)(Component Service)”->計(jì)算機(jī)(Computers)->我的電腦(My Computer)->DCOM配置(DCOM Config)->Microsoft Office Word 97 - 2003 文檔,右擊“Microsoft Office Word 97 - 2003 文檔”,選擇“屬性”進(jìn)行一下兩步操作:
?。?)在【標(biāo)識(shí)(Identity)】選項(xiàng)卡中選中“交互式用戶(The interactive user)”.
(2)在【安全(Security)】選項(xiàng)卡中,分別給前兩個(gè)組(啟動(dòng)和激活權(quán)限,訪問權(quán)限)選擇“自定義(customer)”,然后點(diǎn)“編輯”,在彈出的界面中添加IIS賬號(hào)(Server版的操作系統(tǒng)一般為NETWORK SERVICES,其他系統(tǒng)(XP)可能會(huì)是ASP.NET),并在下面的權(quán)限框中,給該用戶分配所有權(quán)限。
方法3:為ASP.NET站點(diǎn)應(yīng)用池分配本地賬號(hào)
具體操作:在IIS中,為ASP.NET站點(diǎn)創(chuàng)建新的應(yīng)用程序池,再改應(yīng)用程序池屬性的【標(biāo)識(shí)(identity)】選項(xiàng)卡中,為“預(yù)定義賬戶”選擇“本地系統(tǒng)(LocalSystem)”。
如果是IIS7.0中,則按以下步驟操作:為ASP.NET站點(diǎn)創(chuàng)建新的應(yīng)用程序池。選中該應(yīng)用程序池,高級(jí)設(shè)置->進(jìn)程模式—>標(biāo)識(shí):選擇localSystem。
以上三種方法中,個(gè)人比較喜歡用第三種,因?yàn)樵诓僮魍闣ord對象后,還需要關(guān)閉Word對象的進(jìn)程,而第三種方法可以不要其他設(shè)置就能讓ASP.NET應(yīng)用程序有權(quán)限去結(jié)束這個(gè)word進(jìn)程。
檢索 COM 類工廠中 CLSID 為 {00024500-0000-0000-C000-000000000046} 的組件時(shí)失敗,原因是出現(xiàn)以下錯(cuò)誤: 80070005。
這樣給Asp.NET操作Microsoft Office對象帶來了一定的困難。但我們還是要想辦法來進(jìn)行Office對象的操作。下面簡單介紹一下本人在開發(fā)過程中曾經(jīng)使用過的方法:
方法1:配置Web.Config文件,在每次請求時(shí)模擬本地系統(tǒng)的賬戶。
具體操作:在Web.Config文件中添加如下節(jié)點(diǎn):
<identity impersonate="true" userName="accountname" password="password" />
其中:userName是要模擬的本地賬號(hào),password是該賬號(hào)的密碼。
方法2:在“DCOM配置”中,為IIS賬號(hào)配置操作Word(其他Office對象也一樣)的權(quán)限。
具體操作:“組件服務(wù)(Component Service)”->計(jì)算機(jī)(Computers)->我的電腦(My Computer)->DCOM配置(DCOM Config)->Microsoft Office Word 97 - 2003 文檔,右擊“Microsoft Office Word 97 - 2003 文檔”,選擇“屬性”進(jìn)行一下兩步操作:
?。?)在【標(biāo)識(shí)(Identity)】選項(xiàng)卡中選中“交互式用戶(The interactive user)”.
(2)在【安全(Security)】選項(xiàng)卡中,分別給前兩個(gè)組(啟動(dòng)和激活權(quán)限,訪問權(quán)限)選擇“自定義(customer)”,然后點(diǎn)“編輯”,在彈出的界面中添加IIS賬號(hào)(Server版的操作系統(tǒng)一般為NETWORK SERVICES,其他系統(tǒng)(XP)可能會(huì)是ASP.NET),并在下面的權(quán)限框中,給該用戶分配所有權(quán)限。
方法3:為ASP.NET站點(diǎn)應(yīng)用池分配本地賬號(hào)
具體操作:在IIS中,為ASP.NET站點(diǎn)創(chuàng)建新的應(yīng)用程序池,再改應(yīng)用程序池屬性的【標(biāo)識(shí)(identity)】選項(xiàng)卡中,為“預(yù)定義賬戶”選擇“本地系統(tǒng)(LocalSystem)”。
如果是IIS7.0中,則按以下步驟操作:為ASP.NET站點(diǎn)創(chuàng)建新的應(yīng)用程序池。選中該應(yīng)用程序池,高級(jí)設(shè)置->進(jìn)程模式—>標(biāo)識(shí):選擇localSystem。
以上三種方法中,個(gè)人比較喜歡用第三種,因?yàn)樵诓僮魍闣ord對象后,還需要關(guān)閉Word對象的進(jìn)程,而第三種方法可以不要其他設(shè)置就能讓ASP.NET應(yīng)用程序有權(quán)限去結(jié)束這個(gè)word進(jìn)程。
您可能感興趣的文章:
- Asp.net FCKEditor 2.6.3 上傳文件沒有權(quán)限解決方法
- asp.net Forms身份驗(yàn)證和基于角色的權(quán)限訪問
- 實(shí)例說明asp.net中的簡單角色權(quán)限控制
- 一個(gè)基于Asp.Net MVC的權(quán)限方案
- asp.net+sqlserver實(shí)現(xiàn)的簡單高效的權(quán)限設(shè)計(jì)示例
- asp.net BasePage類+Session通用用戶登錄權(quán)限控制
- Asp.net Mvc 身份驗(yàn)證、異常處理、權(quán)限驗(yàn)證(攔截器)實(shí)現(xiàn)代碼
- ASP.NET.4.5.1+MVC5.0設(shè)置系統(tǒng)角色與權(quán)限(一)
- ASP.NET通用權(quán)限驗(yàn)證的實(shí)現(xiàn)代碼思路
相關(guān)文章
ASP.NET頁面間數(shù)據(jù)傳遞的幾種方法介紹
在ASP.NET中,頁面間數(shù)據(jù)傳遞的方法有很多。下面為大家總結(jié)一下,頁面間數(shù)據(jù)傳遞的方法,來看作者的分析。2013-05-05國產(chǎn)化中的?.NET?Core?操作達(dá)夢數(shù)據(jù)庫DM8的兩種方式(操作詳解)
這篇文章主要介紹了國產(chǎn)化之?.NET?Core?操作達(dá)夢數(shù)據(jù)庫DM8的兩種方式,這里提供兩種方式是傳統(tǒng)的DbHelperSQL方式和Dapper?方式,每種方式給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04Asp.net MVC中Razor常見的問題與解決方法總結(jié)
這篇文章主要給大家介紹了關(guān)于Asp.net MVC中Razor常見的問題與解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08ADO調(diào)用分頁查詢存儲(chǔ)過程的實(shí)例講解
下面小編就為大家分享一篇ADO調(diào)用分頁查詢存儲(chǔ)過程的實(shí)例講解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12基于ABP框架實(shí)現(xiàn)RBAC(角色訪問控制)
本文詳細(xì)講解了基于ABP框架實(shí)現(xiàn)RBAC(角色訪問控制)的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12asp.net 刪除MFC單文檔默認(rèn)菜單欄的兩種方法
新建一個(gè)MFC單文檔程序,默認(rèn)都有四個(gè)菜單欄:文件、編輯、視圖和幫助。怎么把這四個(gè)菜單欄刪除掉呢?2010-03-03