iis7導出數據到excel,本地調試無任何問題,發佈到iis就是導不出,在服務器調試iis,報錯:檢索 COM 類工廠中 CLSID 爲 {00024500-0000-0000-C000-000000000046} 的組件時失敗。。
網上搜尋了,找到方法:
1.在"開始"->"運行"中輸入dcomcnfg.exe啓動"組件服務"
2.依次雙擊"組件服務"->"計算機"->"我的電腦"->"DCOM配置"
3.在"DCOM配置"中找到"Microsoft Excel 應用程序",在它上面點擊右鍵,然後點擊"屬性",彈出"Microsoft Excel 應用程序屬性"對話框
4.點擊"標識"標籤,選擇"交互式用戶"
5.點擊"安全"標籤,在"啓動和激活權限"上點擊"自定義",然後點擊對應的"編輯"按鈕,在彈出的"安全性"對話框中填加一個"NETWORK SERVICE"用戶(注意要選擇本計算機名),並給它賦予"本地啓動"和"本地激活"權限
6.依然是"安全"標籤,在"訪問權限"上點擊"自定義",然後點擊"編輯",在彈出的"安全性"對話框中也填加一個"NETWORK SERVICE"用戶,然後賦予"本地訪問"權限.
用上述方法再次導出excel,還是不行。。。
再次搜索,最後確定還需要設置應用程序池的標識,把此網站的AppPool的標識要設置爲LocalSystem或者NetworkService,問題解決。
注:當我把標識設爲LocalSystem時,需把遠程桌面開啓才能導出成功,把遠程桌面關了還是導出失敗,所以最後還是改成了NetworkService,我覺得是不是服務器運行的賬戶不是LocalSystem?。。