我想在Windows 10(64位)中运行c#代码。 该代码使用odbc访问Microsoft Access文件。 该代码适用于具有Microsoft Access 2010和2013的PC。 但是它无法访问没有Microsoft的PC上的文件 访问应用程序我可以在没有Microsoft Access Application的情况下访问该文件。或者我是否需要安装“Microsoft Access Driver 64bit版本”之外的东西才能访问该文件?
我做的是以下,
(1)我安装了“Microsoft Access Driver(* .mdb, .accdb)”64位版本。 (2)我确认ODBC数据源管理员将ACEODBC.DLL识别为“Microsoft Access驱动程序( .mdb,* .accdb)”。
以下显示了调用odbc驱动程序的代码部分。
public static DataTable simpleQuery(string query, string pathToDatabase )
{
DataTable dt = new DataTable();
try
{
using (var con = new OdbcConnection())
{
con.ConnectionString =
@"Driver={Microsoft Access Driver (*.mdb, *.accdb)};" +
@"Dbq=" + pathToDatabase + ";";
con.Open();
OdbcDataAdapter adapter = new OdbcDataAdapter(query, myConnectionString);
adapter.Fill(dt);
con.Close();
}
return dt;
}
catch (Exception e)
{
throw;
}
}
非常感谢。
答案 0 :(得分:0)
我解决了这个问题。
该机器有32位Microsoft Office,尽管它运行在64位Windows上。 所以我需要安装Microsoft Access Driver(* .mdb,.accdb)32位版本,而不是64位版本。
谢谢。