【发布时间】:2011-06-17 06:56:38
【问题描述】:
我已经对这个问题进行了大量研究,但还没有得出任何确定的结论。我在编写报告时遇到 Excel 随机获取 ComExceptions 的问题。我正在使用 Visual Basic 2005(框架 2.0)控制台应用程序来创建这些报告。这个问题一直很难弄清楚,因为它在写报告时发生在随机的地方,所以我无法捕捉到错误来查看问题。我已经查看了它所破坏的不同项目,并且它们没有什么奇怪的会导致任何这些问题。
此外,有时报告运行良好,没有任何问题。
堆栈跟踪: (15:27:24:247) 类型:System.Runtime.InteropServices.COMException (15:27:24:247) 消息:HRESULT 异常:0x800AC472 (15:27:24:253) 堆栈跟踪:在 System.RuntimeType.ForwardCallToInvokeMemb er(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, 消息数据和消息数据) 在 Microsoft.Office.Interop.Excel.Range.set_Value(对象 RangeValueDataType, 目的 ) 错误代码:-2146777998
【问题讨论】:
-
VBA_E_IGNORE,很不爽。这是一个重入问题,Excel 在内部等待操作完成。在等待时,它无法获取您的请求,但由于它很忙而无法执行它。追溯你的步骤,考虑在它崩溃之前你要求它做什么。