Directory.GetCurrentDirectory和Application.StartupPath的區別


 

System.IO.Directory.GetCurrentDirectory()方法用於獲得應用程序當前工作目錄。
System.Windows.Forms.Application.StartupPath 獲得應用程序的可執行文件的路徑,不含文件名

StartupPath 可執行文件固定就不會變,可用於定位
GetCurrentDirectory 不一定是可執行文件所在目錄,因啟動的位置而變

如有兩個程序 C:/A/a.exe 和 C:/B/b.exe
當在 a.exe 中啟動 b.exe,System.Diagnostics.Process.Start(@"C:/B/b.exe")
這時,b.exe 中 Directory.GetCurrentDirectory()方法 返回值為“C:/A”,Application.StartupPath 值為“C:/B”
如果直接在 C:/B/ 中啟動 b.exe,那么兩個值就會一樣,都為“C:/B”
這就是 Directory.GetCurrentDirectory 和 Application.StartupPath 的區別

 

兩個意義是不一樣的. 
Application.StartupPath是程序的啟動目錄,這個在程序運行以后,就不會改變了. 

Directory.GetCurrentDirectory()是 "當前目錄 ",是可以在程序運行時候改變的,用 
Directory.SetCurrentDirectory()就可以改變. 

Directory.GetCurrentDirectory()的缺省值是和Application.StartupPath()一樣的. 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM