C 中獲取程式當前路徑的集中方法

2021-09-06 03:15:56 字數 1566 閱讀 4591

/備註 按照定義,如果該程序在本地或網路驅動器的根目錄中啟動,則此屬性的值為驅動器名稱後跟乙個尾部反斜槓(如「c:\」)。如果該程序在子目錄中啟動,則此屬性的值為

string

str1 

= process.getcurrentprocess().mainmodule.filename;

//可獲得當前執行的exe的檔名。  

string

str2

= environment.currentdirectory;

//獲取和設定當前目錄(即該程序從中啟動的目錄)的完全限定路徑。

不帶尾部反斜槓的驅動器和子目錄路徑(如「c:\mysubdirectory」)。

string

str3

= directory.getcurrentdirectory();

//獲取應用程式的當前工作目錄。

string

str4

= //

獲取基目錄,它由程式集衝突解決程式用來探測程式集。

string

str5

= //

獲取啟動了應用程式的可執行檔案的路徑,不包括可執行檔案的名稱。

string

str6

= //

獲取啟動了應用程式的可執行檔案的路徑,包括可執行檔案的名稱。

str7

= //

獲取或設定包含該應用程式的目錄的名稱。

1.      system.diagnostics.process.getcurrentprocess().mainmodule.filename

獲取模組的完整路徑。

2.      system.environment.currentdirectory

獲取和設定當前目錄(該程序從中啟動的目錄)的完全限定目錄。

3.      system.io.directory.getcurrentdirectory()

獲取應用程式的當前工作目錄。這個不一定是程式從中啟動的目錄啊,有可能程式放在c:\www裡,這個函式有可能返回c:\documents and settings\zyb\,或者c:\program files\adobe\,有時不一定返回什麼東東,我也搞不懂了。

獲取程式的基目錄。

獲取和設定包括該應用程式的目錄的名稱。

獲取啟動了應用程式的可執行檔案的路徑。效果和2、5一樣。只是5返回的字串後面多了乙個"\"而已

獲取啟動了應用程式的可執行檔案的路徑及檔名,效果和1一樣。

對於windows程式 和web 應用程式來說,他們執行的路徑是不一樣的,所以關鍵是判斷當前執行的程式是哪種程式.於是我們可以使用如下的**

這樣如果我們寫了乙個類庫,類庫中用到了assembly.loadfrom,由於是通用類庫,所以可能用到windows程式中也可能用到web中,那麼用上面的**就很方便了.

2、system.windows.forms.startuppath

3、type.assembly.location

方法2可以應用於控制台應用程式,winform應用程式,windows服務,方法1可以應用於web應用程式,方法3都可以應用。

C 中獲取程式當前路徑的集中方法

c 中獲取程式當前路徑的集中方法 string str1 process.getcurrentprocess mainmodule.filename 可獲得當前執行的exe的檔名。string str2 environment.currentdirectory 獲取和設定當前目錄 即該程序從中啟動的...

C 獲取程式當前路徑的方法

c 獲取程式當前路徑的方法 獲取新的 process 元件並將其與當前活動的程序關聯的主模組的完整路徑,包含檔名 程序名 string str system.diagnostics.process.getcurrentprocess mainmodule.filename result x exe ...

C 獲取程式當前路徑的方法

獲取新的 process 元件並將其與當前活動的程序關聯的主模組的完整路徑,包含檔名 程序名 string str system.diagnostics.process.getcurrentprocess mainmodule.filename result x exe exe檔案所在的目錄 exe...