ASP.NET訪問Excel 失敗的解決方案(錯誤號碼:80070005,8000401a)

來源:互聯網
上載者:User

標籤:

用asp.net把值寫入Excel在本地測試通過,然後提交伺服器後老是寫入不成功 並提示錯誤: Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005.
在網路上尋找了許多資料,原來是對於使用者來說,對伺服器上的檔案的操作許可權不夠所引起的錯誤,要配置DCOM
具體配置方法如下:

1:在伺服器上安裝office的Excel軟體.

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

3:依次雙擊"元件服務"->"電腦"->"我的電腦"->"DCOM配置"

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

5:點擊"標識"標籤,選擇"互動式使用者"

6:點擊"安全"標籤,在"啟動和啟用許可權"上點擊"自訂",然後點擊對應的"編輯"按鈕,在彈出的"安全性"對話方塊中填加一個"NETWORK SERVICE"使用者(注意要選擇本電腦名稱),並給它賦予"本地啟動"和"本地啟用"許可權.

7:依然是"安全"標籤,在"存取權限"上點擊"自訂",然後點擊"編輯",在彈出的"安全性"對話方塊中也填加一個"NETWORK SERVICE"使用者,然後賦予"本地訪問"許可權.
好不容易這個問題解決了,接下來又出現8000401a錯誤!
如果是8000401a錯誤:

右鍵開啟屬性對話方塊,點擊"標識"選項卡,

點"下列使用者",把管理員的使用者密碼正確填寫進去...

點擊"安全"選項卡,

依次把"啟動和啟用許可權","存取權限","配置許可權",都選擇為自訂,

然後依次點擊它們的編輯,把NETWORK SERVICE添加進去,並加入本地的讀寫權限...

 

最後,我們還要給所在盤的安全設定修改許可權,同樣也是屬性--安全--添加NETWORK SERVICE,給它修改許可權。

這樣,我們便配置好了相應的Excel的DCOM許可權.

 

總結:

1。只要加NETWORK SERVICE的許可權就可以了,不必加everyone;

2。如果選擇“互動式使用者”還不行,必須選擇“下列使用者”,然後填入管理員的使用者名稱和密碼;

3。還要設定盤符的“安全”選項卡,在X盤上右擊-屬性-安全,同樣添加NETWORK SERVICE使用者名稱,並給它修改的許可權,這樣才最後可以用。

ASP.NET訪問Excel 失敗的解決方案(錯誤號碼:80070005,8000401a)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.