我有一个包括数据导出到Excel的应用程序。而且它在大多数电脑上都能正常工作。然而,有两个
电话被叫人拒绝了。(HRESULT例外: 0x80010001 (RPC_E_CALL_REJECTED))
当我尝试用get_item()打开工作表时。有趣的是,当我设置断点并逐个字符串执行所有字符串时,没有任何例外。一切都很顺利。但在正常的工作行为中,这只是一个例外。
MyApp = new Excel.Application();
MyApp.Visible = false;
string FileFullPath = Path.GetFullPath("Resources/Excel/FullMonthlyAct.xls");
MyBook = MyApp.Workbooks.Open(FileFullPath);
MySheet = (Excel.Worksheet)MyBook.Worksheets.get_Item(1);
Excel.Range excelCell = MySheet.Cells[1, 1] as Excel.Range;更新:--这不是上述问题的重复。在那里,大多数答案告诉我们检查Office激活/安装/文件查询。正如我在Hans Passant的帮助下发现的那样,我得到这个错误只是因为Excel无法及时加载工作簿。
更新:解决可能不是最优雅的解决方案,但可以等到打开工作簿,就像Joost在https://stackoverflow.com/a/54126361/1442373中描述的那样。
发布于 2018-12-26 11:29:55
您的应用程序将在所有安装了excel并正确激活的机器上工作。它不能在这些机器上工作,因为它们可能没有正确地激活microsoft。你需要确保它和问题将得到解决。
https://stackoverflow.com/questions/53931234
复制相似问题