繁体   English   中英

如何修复System.Runtime.InteropServices.COMException错误

[英]How to fix a System.Runtime.InteropServices.COMException error

我创建了一个C#WinForms项目,该项目计算数值并将其写入打开的Excel电子表格。 该程序通过允许用户在Excel程序中打开电子表格来工作。 编写是通过一种称为private void updateExcel_Click(object sender, EventArgs e) ,其编写方式如下:

if (*in range*)
    MySheet.Cells[activeRow, activeColumn].Value = total;

这种方法的工作原理就像一种魅力,除非进行了未提交的更改。 未提交的更改是指用户直接进入电子表格并更改活动单元格中的数字而不用以下其中一项完成更改:

  • 按Enter
  • 按下标签
  • 按方向键
  • 点击其他地方

当我再次使用该程序写入受影响的单元格时,出现System.Runtime.InteropServices.COMException错误。 全文为:

引发异常:System.Dynamic.dll中的“ System.Runtime.InteropServices.COMException” System.Dynamic.dll中发生了类型为“ System.Runtime.InteropServices.COMException”的未处理异常。被调用方拒绝了呼叫。 (来自HRESULT的异常:0x80010001(RPC_E_CALL_REJECTED))

奇怪的是,当直接用户更改使用项目符号方法之一完成时,使用程序重写到单元格时我没有出现任何错误。 我该如何纠正我的程序以避免COMException错误?

我已经尝试过以下msdn链接: 如何修复“被呼叫者拒绝呼叫”错误 我从标记为“在此处插入自动化代码”的空间中调用了C#方法updateCell_Click。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM