You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Visual Studio 2022中Interop.Excel加载失败求助:COM对象转换错误

解决Office Interop Excel 类型转换与DLL加载错误

针对你遇到的System.InvalidCastException(错误码TYPE_E_CANTLOADLIBRARY)问题,以下是针对性解决步骤:

1. 修复Office安装

  • 打开控制面板→程序→程序和功能,找到Office 365,右键选择「更改」,先尝试「快速修复」;若无效,再选择「联机修复」。这能修复损坏的Office类型库或COM组件注册信息。

2. 匹配Interop版本与平台位数

  • 版本对齐:移除项目中现有的Microsoft.Office.Interop.Excel引用,重新添加COM引用列表里的「Microsoft Excel 16.0 Object Library」(对应Office 365版本),避免15.0版本与Office 16.0不兼容。
  • 位数兼容:右键项目→属性→生成→平台目标,根据你的Office位数设置:
    • 若Office为32位,选择x86
    • 若Office为64位,选择x64或AnyCPU(需取消勾选「首选32位」)

3. 重新注册Excel COM组件

以管理员身份打开命令提示符,执行对应路径的注册命令:

  • 64位Office:
    regsvr32.exe "C:\Program Files\Microsoft Office\Root\Office16\EXCEL.EXE"
    
  • 32位Office:
    regsvr32.exe "C:\Program Files (x86)\Microsoft Office\Root\Office16\EXCEL.EXE"
    

4. 改用NuGet包管理Interop引用(推荐)

移除现有手动添加的Interop引用,在NuGet包管理器中搜索并安装Microsoft.Office.Interop.Excel最新稳定版,NuGet会自动适配你的Office环境,避免版本冲突问题。

5. 处理GAC中的版本冲突

你当前引用的是GAC中的15.0版本,可能和Office 16.0冲突:

  • 右键项目中的Interop引用→属性,将「复制本地」设置为True,让项目使用本地复制的DLL,而非GAC中的旧版本;
  • 若仍有问题,可尝试以管理员身份删除GAC中的15.0版本文件(路径:C:\WINDOWS\assembly\GAC_MSIL\Microsoft.Office.Interop.Excel\15.0.0.0__71e9bce111e9429c)。

内容的提问来源于stack exchange,提问作者Katrin Zahnweh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 21:25:54