C#生成Excel出现8000401a的错误的另一种解决办法。
網上能搜到的解決辦法,常見的就是以下3種,比如參考這個博客
https://www.cnblogs.com/gavindou/archive/2012/08/29/2661757.html
1,增加虛擬權限:
在web.config里面增加
的鍵值;要求administrator具有管理員權限,這種方案使用后確實可行,可是不利于部署,因為有經驗的人都知道把一個最高權限的服務器帳號密碼公開顯示在配置文件上有什么后果。
2,增加Com組件的交互式訪問權限:
這也是網上搜索率最高的一種方式,運行“DCOMCNFG”,找到Microsoft Word 97-2003 、 Microsoft Excel 應用程序 、Microsoft PowerPoit 應用程序 文檔 這些組件的交互式訪問權限,詳情可以參見:http://support.microsoft.com/kb/288366
3,增加Com組件特定用戶的訪問權限。
建立一個所需的帳號(例如test),權限為Power User或者User;
用此帳號運行一次word或者excel(確保有訪問權限);運行DCOMCNFG,在Dcom組件里面找到Microsoft Excel 應用程序或者Microsoft Word 文檔(和前面一樣)-屬性-標識里面選擇“特定用戶”,然后輸入前面建立的帳號和密碼就可以了
在有的機器上測試還需要在前面的安全標簽里面添加這個賬號的啟用和訪問權限.當然直接用自己登陸的帳好也是可行的
我這里不知道是修改什么導致的問題,使用第1和第2種還是會隨機出現8000401a的錯誤,第3種方法比較穩定,我把Excel的標識選擇了administrator賬號,就再也不出現了,只是如果遠程桌面到服務器上,然后使用程序調用Excel也不會出現窗口了,直接打開Excel也會報錯(但是不影響使用)。
我現在使用了另外一種辦法,**同樣運行DCOMCNFG,在Dcom組件里面找到Microsoft Excel 應用程序,點擊屬性,在常規里面把身份驗證級改為“無”。徹底不要求驗證身份了。
——20200319更新,經過3天的測試,身份驗證改為“無”還是會隨機出現8000401a的錯誤。最后我還是換回“把Excel的標識選擇了administrator賬號”這個解決方案了
總結
以上是生活随笔為你收集整理的C#生成Excel出现8000401a的错误的另一种解决办法。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最详细最好的Multisim模拟电路仿真
- 下一篇: PHP学习线路图