有些電腦報錯,有些電腦正常。
環境:VS2010 WinForm程序, Office2007
C#操作Excel時報錯。錯誤:
無法將類型為“System.__ComObject”的 COM 對象強制轉換為接口類型“Microsoft.Office.Interop.Excel.Workbook”。
此操作失敗的原因是對 IID 為“{000208DA-0000-0000-C000-000000000046}”的接口的 COM 組件調用 QueryInterface
因以下錯誤而失敗: 加載類型庫/DLL 時出錯。 (異常來自 HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY))。
{45541000-5750-5300-4B49-4E47534F4655} ==> {00020813-0000-0000-C000-000000000046}
解決辦法: 我對比了一下【正常運行的電腦】和【報錯的電腦】的注冊表。修改注冊表后,可以成功運行了。
run --> regedit 打開注冊表 ctrl+f 查找【{000208DA-0000-0000-C000-000000000046}】-》TypeLib 把值改成
默認:{00020813-0000-0000-C000-000000000046}
Version:1.6