具體配置方法如下:
1:在服務(wù)器上安裝office的Excel軟件.
2:在"開(kāi)始"->"運(yùn)行"中輸入dcomcnfg.exe啟動(dòng)"組件服務(wù)"
3:依次雙擊"組件服務(wù)"->"計(jì)算機(jī)"->"我的電腦"->"DCOM配置"
4:在"DCOM配置"中找到"Microsoft Excel 應(yīng)用程序",在它上面點(diǎn)擊右鍵,然后點(diǎn)擊"屬性",彈出"MicrosoftExcel 應(yīng)用程序?qū)傩?對(duì)話(huà)框
5:點(diǎn)擊"標(biāo)識(shí)"標(biāo)簽,選擇"交互式用戶(hù)"
6:點(diǎn)擊"安全"標(biāo)簽,在"啟動(dòng)和激活權(quán)限"上點(diǎn)擊"自定義",然后點(diǎn)擊對(duì)應(yīng)的"編輯"按鈕,在彈出的"安全性"對(duì)話(huà)框中填加一個(gè)"NETWORKSERVICE"用戶(hù)(注意要選擇本計(jì)算機(jī)
名),并給它賦予"本地啟動(dòng)"和"本地激活"權(quán)限.
7:依然是"安全"標(biāo)簽,在"訪(fǎng)問(wèn)權(quán)限"上點(diǎn)擊"自定義",然后點(diǎn)擊"編輯",在彈出的"安全性"對(duì)話(huà)框中也填加一個(gè)"NETWORKSERVICE"用戶(hù),然后賦予"本地訪(fǎng)問(wèn)"權(quán)限.
這樣,我們便配置好了相應(yīng)的Excel的DCOM權(quán)限.
注意:我是在WIN2003上配置的,在2000上,是配置ASPNET用戶(hù)
若不進(jìn)行配置會(huì)出現(xiàn)錯(cuò)誤
檢索 COM 類(lèi)工廠中 CLSID 為 {00024500-0000-0000-C000-000000000046}的組件時(shí)失敗,原因是出現(xiàn)以下錯(cuò)誤: 80070005。
原因是用戶(hù)沒(méi)有使用Excel的權(quán)限。
導(dǎo)出到word同樣要配置使用word的權(quán)限。
失敗,原因是出現(xiàn)以下錯(cuò)誤: 80070005
癥狀:
oWordApplic = New Word.Application
當(dāng)程序運(yùn)行到這句時(shí)出現(xiàn)下面的錯(cuò)誤:
檢索 COM 類(lèi)工廠中 CLSID 為 {000209FF-0000-0000-C000-000000000046}的組件時(shí)失敗,原因是出現(xiàn)以下錯(cuò)誤: 80070005。
oWordApplic = New Word.Application
當(dāng)程序運(yùn)行到這句時(shí)出現(xiàn)下面的錯(cuò)誤:
檢索 COM 類(lèi)工廠中 CLSID 為 {000209FF-0000-0000-C000-000000000046}的組件時(shí)失敗,原因是出現(xiàn)以下錯(cuò)誤: 80070005。
解決方法一:
控制面板-》管理工具-》組件服務(wù)-》計(jì)算機(jī)-》我的電腦-》DCom配置-》找到Microsoft Word文檔
之后
單擊屬性打開(kāi)此應(yīng)用程序的屬性對(duì)話(huà)框。
2. 單擊標(biāo)識(shí)選項(xiàng)卡,然后選擇交互式用戶(hù)。
3.單擊"安全"選項(xiàng)卡,分別在"啟動(dòng)和激活權(quán)限"和"訪(fǎng)問(wèn)權(quán)限"組中選中"自定義",然后
自定義->編輯->添加ASP.NET賬戶(hù)和IUSER_計(jì)算機(jī)名
* 這些帳戶(hù)僅在計(jì)算機(jī)上安裝有 IIS 的情況下才存在。
13. 確保允許每個(gè)用戶(hù)訪(fǎng)問(wèn),然后單擊確定。
14. 單擊確定關(guān)閉 DCOMCNFG。
解決方法二:
如果上述方法不能解決問(wèn)題,就應(yīng)該是權(quán)限問(wèn)題,請(qǐng)嘗試用下面的方法:
在web.config中使用身份模擬,在<system.web>節(jié)中加入 <identity impersonate="true" userName="你的用戶(hù)名"password="密碼"/>
</system.web>
<identity impersonate="true" userName="你的用戶(hù)名"password="密碼"/>
此處我用的超級(jí)用戶(hù)測(cè)試的--通過(guò)