[C#] 由於發生下列錯誤,為具有 CLSID {00024500-0000-0000-C000-000000000046} 的元件擷取 COM Class Factory 失敗: 80040154。
原本寫好的 C# 開啟 Excel 程式是正常,但是換了個開發環境後卻出錯,google 找到的原因都不是我的癥結點,後來找出原因是開發環境沒有安裝 Office
我的環境:
OS: win7 sp1 32bit
VS: 2008
錯誤訊息
解決方案
安裝 Office 2010 32bit 後就正常了。
另外由於連續遇到兩個問題 (此文和上一篇 [C#] System.Data.OracleClient 需有 Oracle 用戶端軟體版本 8.1.7 或以上版本 ) 都是跟開發環境有關,這邊先把開發環境規格記錄起來,後續換環境前當作 STEP 0 先檢查,以免 DEBUG 浪費不少時間..
C# 開發環境 ( 可連 Oracle, 開 Excel )
必要條件:
------------------------------------
OS: win 7 SP1 32 bit
VS: 2008
Office: 2010 32 bit (C# 開啟 excel 用)
OracleClient: win32 11g R2 (C# 連 Oracle 用)
選用:
------------------------------------
JDK: 1.8 ( for Oracle SQL Developer: 4.1)
Oracle SQL Developer: 4.1 (圖形化介面查詢 Oracle)
補上 google 找到的其他可能解法
1.沒權限
2.物件版本不符
3.物件DLL消失
參考資料
本著作係採用創用 CC 姓名標示-相同方式分享 4.0 國際 授權條款授權,文章歡迎轉載,請註明出處,謝謝~~~