Excel Interop Workbooks.Open不一致

我有一个打开多个工作簿的过程

var exApp = new Excel.Application(); Excel.Workbook ONE; Excel.Workbook TWO; Excel.Workbook THREE; ONE = exApp.Workbooks.Open(ONELocation); TWO = exApp.Workbooks.Open(TWOLocation); THREE = exApp.Workbooks.Open(THREELocation); Console.WriteLine("All Excel workbooks opened successfully\n"); 

有时它运行没有问题。

有时,虽然我在碰撞时得到以下exception

System.Runtime.InteropServices.COMException:远程过程调用失败。 (从HRESULTexception:0x800706BE)'

exception发生在不同的工作簿上,有时甚至根本不存在。 当重新运行几次后,过程成功完成并且所有数据都被正确处理。

为什么它有时会起作用,而不是其他的? 有没有更好的方法来打开这些工作簿? 我如何阻止这种情况发生?

RPC_S_CALL_FAILED确实是问题用户xxbbcc所指出的可能重复的根本原因。

但是,这只是告诉我的原因,并没有解决问题。 我用excel这个词search了RPC_S_CALL_FAILED ,发现了这个超级用户的问题

如问题中所述,我禁用了“FoxitReader PDF Creator COM加载项” ,现在我的程序一直运行无误。

如何禁用插件:Excel>文件>选项>加载项>pipe理,然后select“COM加载项”>去。 然后解决有问题的插件。