【发布时间】:2011-12-19 12:00:17
【问题描述】:
由于某种原因,在我的代码完美运行 6 个月后,我开始在代码中出现以下异常。完全没有代码更改,但这里是异常的主要部分:
System.Runtime.InteropServices.COMException (0x80010108): The object invoked has disconnected from its clients. (Exception from HRESULT: 0x80010108 (RPC_E_DISCONNECTED)) at Microsoft.Office.Interop.Excel.WorkbookClass.Save() at ditCreditEMGTestAutomationDifferenceEngine.Comparers.ExcelComparer.performProcessClean() in
它似乎引用的代码:
private void performProcessClean()
{
xlWorkBook1.Save();
xlWorkBook2.Save();
xlWorkBook1 = null;
xlWorkBook2 = null;
xlApp.Quit();
}
我已经在两台单独的机器上尝试了 dll,它们之前工作正常,但看到同样的错误。
有什么想法吗?
【问题讨论】:
-
Excel 确实崩溃了。当对目标进程的 COM 调用未成功时,将返回代码 RPC_E_DISCONNECTED。这通常表明该过程以某种方式损坏。是否安装了新的 Excel 插件?
-
发生了什么变化?如果不是你的代码,那么它一定是那些机器上的其他东西
标签: c# excel exception com interop