请教c#关于路径问题

ljz0919 2009-01-10 11:28:35
c#生手,程序中用到了access数据库,数据库名称:syspara070322.mdb,访问时如下路径表示:
"D:\c#2003_yssh\yssh_project\yssh_back_new\data\系统参数\syspara.mdb"
现在我想用相对路径表示,请教如何表示,因为我想在制作安装包的时候,把这个数据库也打包在一起,这样,用户安装完毕,如果不是相对路径,可定出问题,望高人指点迷津,先谢了。
...全文
115 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
rightyeah 2009-01-10
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 barry_bai 的回复:]

Application.StartupPath + "\\syspara.mdb";
[/Quote]支持
POWER_WONG 2009-01-10
  • 打赏
  • 举报
回复
同意楼上的意见,Application.StartupPath + "\\syspara.mdb";

在打包时你把这个syspara.mdb文件同时添加在“应用程序文件夹”目录下(或者在安装目录“应用程序文件夹”下新建一介目录,一样的道理);

在程序引用数据库路径时最好用相对路径:
定义一个路径 string path = Application.StartupPath + "\\syspara.mdb";
如果数据库有密码:string password = "123456";
OleDbConnection conn = new OleDbConnection(string.Format("Provider=Microsoft.JET.OLEDB.4.0;Data Source='{0}';Persist Security Info=false;JET OLEDB:Database Password={1}",path, password));



这样打包后安装后程序就会正确找到相关的数据库文件了。
barry_bai 2009-01-10
  • 打赏
  • 举报
回复

Application.StartupPath + "\\syspara.mdb";
颤菊大师 2009-01-10
  • 打赏
  • 举报
回复
将数据库放在当前项目前……
appcation.StartPath+"//"+"syspara.mdb"
捷哥1999 2009-01-10
  • 打赏
  • 举报
回复
楼主该结贴了,发了帖子,有朋友给出答案了,应该结贴哦
yidongliange4 2009-01-10
  • 打赏
  • 举报
回复
你当前代码执行者的同级目录就这样 @".\syspara.mdb"; 可以了

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧