C#獲取和設置當前目錄的完全限定路徑。

  • 32588
  • 0

摘要:C#獲取和設置當前目錄的完全限定路徑。

1..獲取和設置當前目錄的完全限定路徑。

string str = System.Environment.CurrentDirectory;

Result: C:\xxx\xxx

2.獲取啟動了應用程序的可執行文件的路徑,不包括可執行文件的名稱。

string str = System.Windows.Forms.Application.StartupPath;

Result: C:\xxx\xxx

3.獲取新的 Process 組件並將其與當前活動的進程關聯的主模塊的完整路徑,包含文件名。

string str = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;

Result: C:\xxx\xxx\xxx.exe

4.獲取當前 Thread 的當前應用程序域的基目錄,它由程序集衝突解決程序用來探測程序集。

string str = System.AppDomain.CurrentDomain.BaseDirectory;

Result: C:\xxx\xxx\

5.獲取應用程序的當前工作目錄。

string str = System.IO.Directory.GetCurrentDirectory();

Result: C:\xxx\xxx

6.獲取和設置包含該應用程序的目錄的名稱。

string str = System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase;

Result: C:\xxx\xxx\

7.獲取當前進程的完整路徑,包含文件名。

string str = this.GetType().Assembly.Location;

Result: C:\xxx\xxx\xxx.exe

8.獲取啟動了應用程序的可執行文件的路徑,包括可執行文件的名稱。string str = System.Windows.Forms.Application.ExecutablePath;



Result: C:\xxx\xxx\xxx.exe

 

****PC上只要使用Application.StartupPath即可取得執行檔所在路徑
 

  1. string strSourcePath = Application.StartupPath;  


但是在智慧型裝置(Windows CE.Pocket PC.SmartPhone)取得方式就不同了
所使用的函式為Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase)
Reference System.IO and System.Reflection first .
 

  1. using System;   
  2. using System.Collections.Generic;   
  3. using System.ComponentModel;   
  4. using System.Data;   
  5. using System.Drawing;   
  6. using System.Text;   
  7. using System.Windows.Forms;   
  8.   
  9. using System.IO;   
  10. using System.Reflection;   
  11.   
  12. namespace PocketPC2003   
  13. {   
  14.     public partial class Form1 : Form   
  15.     {   
  16.         public Form1()   
  17.         {   
  18.             InitializeComponent();   
  19.         }   
  20.   
  21.         private void button1_Click(object sender, EventArgs e)   
  22.         {   
  23.             button1.Text = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase);   
  24.         }   
  25.     }   
  26. }