用C#做了一个windows窗体应用程序,用到的数据库是Access,名字叫cwb,在我自己电脑上的路径为C:\Documents and Settings\cwb.mdb;在程序中的连接字符串是:Provider=......;Data Source=C:Documents                        andsettings\VisualStudio2005\Projects\js\cwb.mdb(因为VisualStuido把它复制到自己的项目目录中了).
  现在要将应用程序发布出去,安装到其他部门的电脑上,如何保证能够将cwb.mdb这个数据库一起发布出去,并且安装后应用程序能够正常访问该数据库。请具体说明在VisualStudio2005安装部署项目中如何设置,谢谢!!

解决方案 »

  1.   

    可以将数据库文件(*.mdb)与可执行程序放在同一目录下。
    连接字符串中的数据库文件路径使用相对路径。
    “Provider=…… DataSource=cwb.mdb ……”
      

  2.   


    连接字符串:string ConnString="provider=Microsoft.Jet.OLEDB.4.0;data source=.\\cwb.mdb;Jet OLEDB:Database Password=得设个密码吧?;Persist Security Info=false";
      

  3.   

    直接放在exe执行文件的同级目录。路径直接写数库名。
      

  4.   

    其实最好的方法 是将数据库放到 你的运行目录下或 在运行目录下建立个文件加DB ,而在写数据库连接串时 
    string strCurPath = System.Environment.CurrentDirectory;//获取当前程序的运行路径
    string ConnString="provider=Microsoft.Jet.OLEDB.4.0;data source=" + strCurPath + "(\\DB如果你建DB文件夹)\\cwb.mdb;Jet OLEDB:Database Password="....//如果你建DB文件夹
    string ConnString="provider=Microsoft.Jet.OLEDB.4.0;data source=" + strCurPath + "\\DB\\cwb.mdb;Jet OLEDB:Database Password="....
      

  5.   

    其实最好的方法 是将数据库放到 你的运行目录下或 在运行目录下建立个文件加DB ,而在写数据库连接串时 
    string strCurPath = System.Environment.CurrentDirectory;//获取当前程序的运行路径 
    string ConnString="provider=Microsoft.Jet.OLEDB.4.0;data source=" + strCurPath + "\\cwb.mdb;Jet OLEDB:Database Password=".... //如果你建DB文件夹 
    string ConnString="provider=Microsoft.Jet.OLEDB.4.0;data source=" + strCurPath + "\\DB\\cwb.mdb;Jet OLEDB:Database Password="....这样一来你就不用考虑数据库放到哪里了,只要放到你的运行目录下的任何位置,你都可以得到他的目录 .