2011年10月4日 星期二

【ASP.NET】CLSID {xxx-xxx-xxx} 的元件擷取 COM Class Factory 失敗: 80070005。

最近為了要使用Microsoft Office Component
像我要使用的是PowerPoint
結果在執行建構Application物件時就發生標題上的Exception啦
PowerPoint.Application app = new PowerPoint.Application(); →這句會錯


後來在網路上找了三天三夜的解答
大家都是說在『系統管理工具元件服務電腦我的電腦DCOM』底下
找到PowerPoint Application把它變更權限就可以啦

但是但是
我的本機雖裝了Microsoft Office
可是居然找不到!!
連最常見的Microsoft Office Excel Application 也沒有!!
這其中一定有什麼誤會啊啊啊啊啊啊!!

後來好不容易找到問題了~
因為我公司的電腦環境是:Windows 7 64bit
然而安裝的Microsoft Office 2010是32bit的
所以他好像理當是不會出現的喔~

那可好了
該怎樣解決呢?
讓我來告訴你~
開始搜尋列裡面打 mmc - 32
這樣會把主控台的畫面給打開
之後請按下左上角的
檔案新增/移除嵌入式管理單元選取選單中的元件服務新增到右邊確定
然後再將DCOM資料夾打開你就會發現PowerPoint 投影片啦~
(同時也會有Microsoft Office Excel Application囉)
再按右鍵修改他的存取權限就OK啦~

至於要給那些使用者權限呢?
呃....我都亂加耶~
主要應該是給ASP.NET, NETWORK SERVICE就可以了吧~
我猜的~XD

沒有留言: