我正在使用 Microsoft.Office.Interop.Excel 使用 C# 创建 Excel 报告。这些报告有大量的图形,需要很长时间来准备。在准备过程中,我的程序使用的 Excel 应用程序的实例对用户是隐藏的。
我的问题是 Microsoft Office 倾向于自动共享应用程序实例。如果用户打开 Excel 工作簿,Excel 将尝试查找正在运行的 Excel 实例并从那里打开文档。当用户在我的程序运行时尝试打开 Excel 工作簿时,它会附加到我的程序使用的实例上。
这会产生两个问题。首先,它迫使我的报告在它们应该变得可见之前变得可见。其次,我的程序现在需要与用户争夺 Excel 实例的注意力——而我的程序通常会失败。
那么,有没有办法让 Excel 实例拒绝请求(来自用户。它仍然应该服从我的程序)打开文档,并使 Office 在必须决定如何打开 Excel 文档时忽略我的实例?