日期:2014-05-18  浏览次数:21085 次

请问“当前目录”和“基目录”分别是什么意思?
Environment.CurrentDirectory //基目录
AppDomain.CurrentDomain.BaseDirectory //当前目录

之前如果我想得到被执行的EXE文件所在目录,都是用Environment.CurrentDirectory,也没出现什么问题。

但今天新建了一个windows服务,创建一个文件,默认是创建c:\windows\system32下的,后来用了Environment.CurrentDirectory得到的仍然是这个路径。
只有用AppDomain.CurrentDomain.BaseDirectory 才能得到服务对应的那个EXE文件的目录。

网上搜到的解释我也看不太懂,是这样写的
Environment.CurrentDirectory //获取和设置当前目录(即该进程从中启动的目录)的完全限定路径。 
AppDomain.CurrentDomain.BaseDirectory //获取基目录,它由程序集冲突解决程序用来探测程序集。

谁能告诉我他们之间的主要区别是什么吗,使用的时候需要注意什么吗?]
谢谢大家了。

------解决方案--------------------
Environment.CurrentDirectory 服务属于系统的一部分了,所以应用程序在系统的根下


AppDomain.CurrentDomain.BaseDirectory 应用程序所在的目录