我们的应用程序以 XLSX 格式导出数据库片段。我们在上面编写了自己的代码, System.Packaging
因为它比使用 Excel 对象快很多(很多!)倍。
现在我们将这些文件保存为 .xlsx 格式,这样就可以了。但是,如果双击其中一个打开我们的应用程序,但在没有它的机器上无法返回 Excel 会更好。
我知道 SpreadsheetML 具有执行此操作的功能。如果在文件顶部附近插入:
<?mso-application progid=""Excel.Sheet""?>
发生了某种魔法,导致 Excel 在 Win 机器上打开。虽然这可能适用于 SML 文件,但它似乎不适用于“真正的”xlsx 文件 - 我尝试将此行添加到工作簿结构的各个部分,但它仍然无法识别。
那么我们可以在 System.Packaging 生成的“真正的”XLSX 文件中使用类似的机制吗?或者在这些情况下我们应该使用其他一些 Windows 机制?