获取wpf工程的根目录?

qzp000000 2013-01-16 10:48:00
使用
AppDomain.CurrentDomain.BaseDirectory = "****\\visual studio 2012\\Projects\\WpfApplication1\\WpfApplication1\\bin\\Debug\\"

其实我只想要
****\visual studio 2012\Projects\WpfApplication1\WpfApplication1\NewFolder

想要获取更目录,然后接着找到NewFolder文件夹。。
但是AppDomain.CurrentDomain.BaseDirectory得到了debug目录,有没有那个方法直接得到根目录?
谢谢啦
...全文
512 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
机器人 2013-01-17
  • 打赏
  • 举报
回复
还有一种方式,是使用 windows 提供的特殊路径 比如 ApplicationData 这可以用 Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) 获得。在这个目录下创建的目录,都可以通过底层提供的API来获取。
机器人 2013-01-17
  • 打赏
  • 举报
回复
所有路径都应该相对 exe 的路径来设计的。 所以只要你的 NewFolder 相对于 exe 来说保持正确的相对路径,就可以算出。 另外一种方式是记录 NewFolder 的绝对路径。 bin\debug 路径不是固定的。比如你用 release 模式编译,会生成到 bin\release 下。 如果用户安装,这个路径又可能是自由选择的。
qzp000000 2013-01-17
  • 打赏
  • 举报
回复
谢谢楼上的老师,学到了很多方法..
threenewbee 2013-01-17
  • 打赏
  • 举报
回复
你可以用 ..\定位到上一层目录。..\xxx代表xxx目录是程序所在目录的平级目录。你还可以用..\..\返回上上级目录,等等。 ls的方法也很好,另外可以通过环境变量定位目录。
暖枫无敌 2013-01-16
  • 打赏
  • 举报
回复
是的,这种方法获取到的默认就是bin\debug下可执行exe文件的路径 你可以获取到该路径后,然后从debug目录往上截取两级文件夹就是你项目的根目录了 string path = AppDomain.CurrentDomain.BaseDirectory; string rootpath = path.Substring(0, path.LastIndexOf("\\")); rootpath = rootpath.Substring(0, rootpath.LastIndexOf("\\"));
CMIC 2013-01-16
  • 打赏
  • 举报
回复
一般获取根目录的方法都是获取执行文件所在路径,因为执行文件在bin下面,所以获取了bin的路径,直接获取你要去的那个路径我绝的不太可能。
在Windows系统中,notepad.exe(记事本)是一个“经典的”、“简洁的”文本编辑器。这个软件,没有华丽的外观,也没有繁杂的功能,仅仅是一个文本编辑小软件。虽然经过Windows系统数十年的变换,但它却保持着永恒姿态,数十年来几乎不曾改变过。曾经,VS中的经典DEMO中,就有它的身影,一个新建的项目,就藏有一个新建的“记事本”。然而,在WPF的项目中,“记事本”却消失的无影无踪,也许是很容易实现,也许是为了革新,而不愿再传承“经典”。确实,使用WPF技术再次让“记事本”复活,确实也是一件非常容易的事情。但是,如果,使用WPF技术,再搭配当下非常流行的MVVM模式呢?复活“记事本”的难度却陡然上升至很多WPF程序员为之默默叹气。而,MVVM模式是掌握WPF的最顶级技术,MVVM模式拥有的无尽的优势,让WPF相对于过往的编程模式来说,是一种革命性的创新,从而也成为大中型WPF项目中必须的模式。但,学习难度。。。。。。在这个《WPF记事本开发详解》的课程中,赵老师带领你在WPF中,从零开始一步步构建MVVM模式,直到让你亲自以WPF+MVVM的方式,让这个经典的“记事本”软件从你的手中“复活”。在课程中,赵老师会详细讲解WPF和MVVM中的各种技巧,让你从此爱上WPF+MVVM编程。

17,742

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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