我正在尝试使用C#和CPLEX解算器在Visual Studio中运行优化脚本。
对于数据,我使用的是Access 2013,尽管我使用的是旧的.mdb文件格式。
我使用Access JET引擎设置数据库连接,这似乎需要32位版本。
public static string connectionString = "provider=Microsoft.JET.OLEDB.4.0; data source = " + filePath + dbName + ".mdb";
但是,我拥有的CPLEX版本是64位(使用ILOG.Concert和ILOG.Cplex引用),并且不会在32位版本中运行,否则会抛出BadImageFormatException。
除了试图说服我的大学的SysAdmins安装MSSQL Management Studio(会采取国会行为)之外,我能做些什么吗?
更新:我在任何拥有CPLEX许可的计算机上都没有管理员权限,因此我无法安装Microsoft随Office 2010发布的64位驱动程序。
答案 0 :(得分:2)
将此代码用于Office 2007以上
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + pathnam + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=2\"
答案 1 :(得分:1)
您可以使用64位版本的驱动程序。微软必须在创建64位版本的Office时制作它。
根据http://blogs.msdn.com/b/psssql/archive/2010/01/21/how-to-get-a-x64-version-of-jet.aspx
Office 2010将引入64位版本的Office。就是这样 即将推出的64位版本的ACE驱动程序/提供程序 本质为您提供64位版本的Jet。缺点是它 不附带操作系统,但可以是可再发行的。
您可以在此处下载可再发行的http://www.microsoft.com/en-us/download/details.aspx?id=13255