1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
-獲取模塊的完整路徑。
2. System.Environment.CurrentDirectory
-獲取和設(shè)置當(dāng)前目錄(該進(jìn)程從中啟動的目錄)的完全限定目錄。
3. System.IO.Directory.GetCurrentDirectory()
-獲取應(yīng)用程序的當(dāng)前工作目錄。這個不一定是程序從中啟動的目錄啊,有可能程序放在C:/www里,這個函數(shù)有可能返回C:/Documents and Settings/ZYB/,或者C:/Program Files/Adobe/,有時不一定返回什么東東,我也搞不懂了。
4. System.AppDomain.CurrentDomain.BaseDirectory
-獲取程序的基目錄。
5. System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase
-獲取和設(shè)置包括該應(yīng)用程序的目錄的名稱。
6. System.Windows.Forms.Application.StartupPath
-獲取啟動了應(yīng)用程序的可執(zhí)行文件的路徑。效果和2、5一樣。只是5返回的字符串后面多了一個"/"而已
7. System.Windows.Forms.Application.ExecutablePath
-獲取啟動了應(yīng)用程序的可執(zhí)行文件的路徑及文件名,效果和1一樣。
//獲取模塊的完整路徑。string path1 = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;//獲取和設(shè)置當(dāng)前目錄(該進(jìn)程從中啟動的目錄)的完全限定目錄string path2 = System.Environment.CurrentDirectory;//獲取應(yīng)用程序的當(dāng)前工作目錄string path3 = System.IO.Directory.GetCurrentDirectory();//獲取程序的基目錄string path4 = System.AppDomain.CurrentDomain.BaseDirectory;//獲取和設(shè)置包括該應(yīng)用程序的目錄的名稱string path5 = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;//獲取啟動了應(yīng)用程序的可執(zhí)行文件的路徑string path6 = System.Windows.Forms.Application.StartupPath;//獲取啟動了應(yīng)用程序的可執(zhí)行文件的路徑及文件名string path7 = System.Windows.Forms.Application.ExecutablePath;StringBuilder str=new StringBuilder();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);string allPath = str.ToString();
/* 輸出結(jié)果
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
*/