“Microsoft Office 2007主互操作程序集”与“2007 Office System驱动程序:数据连接组件”是一样的吗?

我在Visual Studio 2010中创build了一个安装程序,用于需要使用OleDbConnection从xlsx电子表格读取数据的应用程序(连接string看起来像"Provider=Microsoft.Ace.OLEDB.12.0;Data Source='filename';Mode=ReadWrite;Extended Properties='Excel 12.0';HDR='Yes'";

在我的机器上,我一直在从这个微软网站上安装“2007 Office System Driver:Data Connectivity Components”。

在Visual Studio中,“安装程序” – >“属性” – >“先决条件”中的可用先决条件列表不包括“2007 Office System驱动程序:数据连接组件”,但它包含“Microsoft Office 2007主互操作程序集” 微软网站 )。

我的问题是:将“Microsoft Office 2007 PIA”列为必备条件,是否允许我的OleDbConnection适用于尚未安装“2007 Office System Driver:Data Connectivity Components”的人员?

不,您正在通过ADO.Net查询excel文件,需要发送数据访问驱动程序。 为此,您可以将Microsoft Access数据库引擎可再发行组件embedded安装程序中作为先决条件 。

2007年PIA将允许你创build和自动化通过COM互操作,这是更强大(例如,你得到公式单元格更新),但比Excel的OLEDB接口慢很多的Excel实例。