首先,這里提供的解決辦法僅適用於出現如下異常的情況:
無法將類型為“Microsoft.Office.Interop.Excel.ApplicationClass”的 COM 對象強制轉換為接口類型“Microsoft.Office.Interop.Excel._Application”。此操作失敗的原因是對 IID 為“{000208D5-0000-0000-C000-000000000046}”的接口的 COM 組件調用 QueryInterface 因以下錯誤而失敗: 庫沒有注冊。 (異常來自 HRESULT:0x8002801D (TYPE_E_LIBNOTREGISTERED))。
對異常異常的解決辦法為,刪除如下兩類的注冊表鍵:
第一類:HKEY_CLASSES_ROOT\TypeLib\{00020813-0000-0000-C000-000000000046}\1.7
第二類:HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{00020812-0000-0000-C000-000000000046}\InprocServer32\14.0.0.0
查詢如上項的查找關鍵字為:“Microsoft.Office.Interop.Excel, Version=14.0.0.0”。
正常情況下,刪除如上注冊表項后前述異常將不再出現。