您好我有一个应用程序,其中一个作业将从Excel文件中获取所有记录,并且我正在使用COM Interop。
所以这很好用,它正在做我真正想要的。问题是如果我们在项目中添加对库版本14.0(Office 2010)的引用,但是如果我们选择我们的应用程序,并且如果我们在具有不同版本的Office 2010的任何PC中运行它,他将无法识别库因为它有不同的版本(例如Office 2007 - versioan 12.0)。
所以有什么方法可以避免这种情况?
提前致谢!
答案 0 :(得分:2)
我认为如果你使用后期绑定并使用版本独立的progid。
答案 1 :(得分:1)
如果只需要读取excel以外的excel文件,我建议使用第三方完全托管的库,如“Spreadsheet Gear”或“GemBox”,它们更快更容易使用。 (有开源xls xlsx格式的开源xls解析器和库,但我没有对它们进行测试)
如果您需要在Excel中工作,我只知道提供版本无关的办公室互操作dll的“Add-in Express”。
答案 2 :(得分:0)
最好的方法是针对您需要获得支持的最旧的Office版本进行编程。但实际上,您可以使用任何互操作版本来支持所需的Office版本,请参阅Supporting several Office versions in an add-in. Interop assemblies and late binding.