ASP.NET总结C#中7种获取当前路径的方法
1.System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
-获取模块的完整路径。
2.System.Environment.CurrentDirectory
-获取和设置当前目录(该进程从中启动的目录)的完全限定目录。
3.System.IO.Directory.GetCurrentDirectory()
-获取应用程序的当前工作目录。这个不一定是程序从中启动的目录啊,有可能程序放在C:\www里,这个函数有可能返回C:\DocumentsandSettings\ZYB\,或者C:\ProgramFiles\Adobe\,有时不一定返回什么东东,我也搞不懂了。
4.System.AppDomain.CurrentDomain.BaseDirectory
-获取程序的基目录。
5.System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase
-获取和设置包括该应用程序的目录的名称。
6.System.Windows.Forms.Application.StartupPath
-获取启动了应用程序的可执行文件的路径。效果和2、5一样。只是5返回的字符串后面多了一个"\"而已
7.System.Windows.Forms.Application.ExecutablePath
-获取启动了应用程序的可执行文件的路径及文件名,效果和1一样。
//获取模块的完整路径。 stringpath1=System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName; //获取和设置当前目录(该进程从中启动的目录)的完全限定目录 stringpath2=System.Environment.CurrentDirectory; //获取应用程序的当前工作目录 stringpath3=System.IO.Directory.GetCurrentDirectory(); //获取程序的基目录 stringpath4=System.AppDomain.CurrentDomain.BaseDirectory; //获取和设置包括该应用程序的目录的名称 stringpath5=System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase; //获取启动了应用程序的可执行文件的路径 stringpath6=System.Windows.Forms.Application.StartupPath; //获取启动了应用程序的可执行文件的路径及文件名 stringpath7=System.Windows.Forms.Application.ExecutablePath; StringBuilderstr=newStringBuilder(); str.AppendLine("System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName:"+path1); str.AppendLine("System.Environment.CurrentDirectory:"+path2); str.AppendLine("System.IO.Directory.GetCurrentDirectory():"+path3); str.AppendLine("System.AppDomain.CurrentDomain.BaseDirectory:"+path4); str.AppendLine("System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase:"+path5); str.AppendLine("System.Windows.Forms.Application.StartupPath:"+path6); str.AppendLine("System.Windows.Forms.Application.ExecutablePath:"+path7); stringallPath=str.ToString();
/* 输出结果
System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release\XmlAndXsd.vshost.exe
System.Environment.CurrentDirectory:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release
System.IO.Directory.GetCurrentDirectory():D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release
System.AppDomain.CurrentDomain.BaseDirectory:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release\
System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release\
System.Windows.Forms.Application.StartupPath:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release
System.Windows.Forms.Application.ExecutablePath:D:\work\prj\VP-VPlatform\XmlAndXsd\bin\Release\XmlAndXsd.EXE
*/