我的数据库连接串是定义在一个公用的类中的
public static string _ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
+ Directory.GetCurrentDirectory() + "\\SrcData\\db.mdb"
+ ";User ID=Admin;Password=;"; 、因为用的是Directory.GetCurrentDirectory() ,所以是相对目录,但为何用户拷贝我的程序到他的机子上,就会显示数据库路径读取的错误呢?
在我同事的机子上也是正常的,为何会这样呢?

解决方案 »

  1.   

    这个原因还要看具体的错误信息,未必是目录错了。选择目录,就有 FolderBrowserDialog 组件
      

  2.   

    还有,.net OleDbConnection 连接字符串是这样写的Provider=Microsoft.Jet.OLEDB.4.0;Data Source=sms.mdbC#要
    using System.Data.OleDb;
      

  3.   

    用Application.StartupPath看看
      
    *****************************************************************************
    欢迎使用CSDN论坛阅读器 : CSDN Reader(附全部源代码) 
    http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
      

  4.   

    你在用户的机器上单独测试一下Directory.GetCurrentDirectory()返回是什么,
    在看一下string_ConnectionString返回是什么;
      

  5.   

    如果是WEB程序,ACCESS所在的目录是需要权限的!
      

  6.   

    是winform程序
    Application.StartupPath只能用于应用程序
    而Directory.GetCurrentDirectory()可以用于类库
    我的公用类是放在一个类库中的。
      

  7.   

    db.mdb的目录到底是相对你exe的路径还是类的路径?
      

  8.   

    Directory.GetCurrentDirectory()这个方法我是用在了类库里,做为一个静态变量存储的。
      

  9.   

    Directory.GetCurrentDirectory() 在以后的打开 文件夹了等等操作会改变这个属性的值,建议用
    别的