2013-08-07 19 views
0

我有一個Windows窗體應用程序,它有錯誤日誌文件。我一直在錯誤日誌文件中的解決方案的路徑和參考路徑的代碼如下所示Windows窗體在應用程序安裝在系統中時獲取文件路徑

File.AppendText(@"../../ErrorLog.txt") 

代碼工作正常,當我運行在任何系統的調試模式下的代碼。

但是,當我發佈代碼,採取.exe文件並在我的系統中安裝應用程序,應用程序無法找到錯誤日誌文件。當我去安裝路徑錯誤日誌文件被命名爲ErrorLog.txt .deploy文件。

所以我應該如何在我的代碼中引用此路徑,以便它在任何系統中安裝時都能工作?

+0

你部署ERRORLOG.TXT? ErrorLog.txt程序是輸入還是輸出?對於錯誤日誌,通常在程序第一次運行時從頭開始創建文件是有意義的。注意:例如,如果您的安裝目錄是'C:\ Windows',則不會有兩個級別的目錄。將日誌路徑放在配置文件中很有意義。 – 2013-08-07 04:01:41

+0

好的ErrorLog.txt我可以從頭開始創建文件,我第一次使用。但我也有一個XML文件,它提供數據給Application.wht我可以在這種情況下做什麼? –

+0

通常對於程序輸入,我將文件保存在與可執行文件相同的目錄中。然後爲了部署,我將文件放在我的項目目錄中,並確保選擇「複製」部署屬性。然後應該在構建過程中將該文件複製到適當的bin目錄中,並且只需從bin/Release複製XML文件以進行部署即可。如果您將輸入文件放入不相關的目錄中,那麼您肯定希望將這些文件的路徑或完整文件路徑放在配置文件中。 – 2013-08-07 04:16:01

回答

0

我使用的是公共財產,其給出了應用程序的根文件夾的地址:

public string StartPath 
{ 
    get{ return System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase).Substring(6); } 
} 
相關問題