摘自:http://blog.youkuaiyun.com/puncha/article/details/7434308
以前遇到过相似的问题,是ACCESS JET引擎没有注册,那是因为Office 2010 x64是没有JET 4.0引擎了,但是我已经该用了ACE 12了,为什么还是有问题了?网上找了很多资料,都不能解决问题!都说,需要安装一个DataEngine x86。。
最终,终于找到问题所在,VS创建的项目,会默认把TargetCPU设置成x86,那么会强制让编译出来的程序变成32位的,当然应用程序就会去找32位的引擎了,最终把TargetCPU设置成Any CPU完美解决问题!!!

VS2010连接Access2010. 连接代码。
try
{
string strCon = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\Documents\Student.accdb";
OleDbConnection myConn = new OleDbConnection(strCon);
myConn.Open();
label1.Text = "数据库连接成功!";
myConn.Close();
}
catch
{
label2.Text =("数据库连接错误,错误");
}
本文解决了一个常见的问题,即在使用Visual Studio 2010连接Access 2010数据库时遇到的连接失败。问题的根源在于项目设置中TargetCPU被默认设置为x86,导致程序寻找32位的引擎。通过将TargetCPU设置为AnyCPU,可以确保程序正确地连接到64位的ACE引擎。
1302

被折叠的 条评论
为什么被折叠?



