在C#问题中访问受密码保护的MS访问数据库

时间:2014-05-29 14:55:06

标签: c# sql ms-access ms-access-2007 oledb

我正在尝试使用DAO在C#中连接受密码保护的数据库。我以前使用不受保护的数据库正确编写的代码。现在,当尝试通过添加默认密码连接到数据库时,它无法正常工作。

    var dbe = new DBEngine();
    dbe.DefaultPassword = "abc123";
    Database db = dbe.OpenDatabase(@"C:\Users\x339\Documents\Test.accdb");

我收到错误: '无法启动您的申请。工作组信息文件丢失或由其他用户独占打开。 我不确定我在哪里出错了。任何帮助,将不胜感激。

1 个答案:

答案 0 :(得分:3)

我不建议再使用DAO,但如果必须,请使用此代码:

var dbe = new DBEngine();
var databaseFile = @"C:\Users\x339\Documents\Test.accdb";
var password = "abc123";
Database db = dbe.OpenDatabase(databaseFile, False, False, string.Format("MS Access;PWD={0}", password));