var str1 = Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName);
var str2 = Environment.CurrentDirectory;
var str3 = Directory.GetCurrentDirectory();
var str4 = AppDomain.CurrentDomain.BaseDirectory;
var str5 = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
str1.ToString();
str2.ToString();
str3.ToString();
str4.ToString();
str5.ToString();
网站 在 vs中调式
C:\Program Files (x86)\Common Files\Microsoft Shared\DevServer\9.0\WebDev.WebServer.exe
D:\ProgramFiles\Microsoft Visual Studio 9.0\Common7\IDE
D:\ProgramFiles\Microsoft Visual Studio 9.0\Common7\IDE
E:\SVN\projects\project\corweb\trunk\software\version0\CODE515\Corweb\WebJieDi\
C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\14844efb\35d60841\assembly\dl3\70f043c4\007f87c8_36e4cf01
网站 已经 发布 IIS
C:\Windows\SysWOW64\inetsrv\w3wp.exe
C:\Windows\SysWOW64\inetsrv
C:\Windows\SysWOW64\inetsrv
D:\webtest\jiedi2\
C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\ddd14593\1653279f\assembly\dl3\4a0aabf6\2e64f451_35e4cf01
winform 在vs中调试 与 winform 安装后; 以上各值全部一致
以上各值从概念上还有很多区别。
CurrentProcess :当前进程;正在执行本段代码的exe进程;如果是winform那就是自己;如果是已经部署的网站那就是IIS的w3wp.exe;如果是vs调试那就是对应的调试程序
ExecutingAssembly : 正在执行的程序集;xx.dll本身;winform就是自己;网站 .dll已经被拷贝到.net目录下
CurrentDomain: 当前域 ;
see: domain
http://www.cnblogs.com/foman/archive/2009/10/18/1585655.html