2016-03-15 79 views
1

之後重命名包含其配置文件(.config)的(入口)程序集(.exe)是否存檔? .net運行時可能會拋出一個異常,導致名稱不同,它的名稱與它的構建?之後重命名可執行文件(.exe)

沒有其他程序集依賴於此文件。

用例是我們在我們的宿主環境中多次運行我們的程序作爲服務,並且我們希望通過將公司名稱包含在.exe的文件名中來更好地識別TaskManager(內部支持)中的程序。

普通的名字通過構建過程:

OurApplication.exe 
OurApplication.exe.config 

通過安裝過程中的新名稱:

OurApplication.CompanyName.exe 
OurApplication.CompanyName.exe.config 

我曾經嘗試這樣做手工一次,它似乎工作,但我不能確定,如果我錯過了一些東西。

+0

重命名它也應該改變默認設置保存位置爲每複製,所以他們工作在不同的用戶設置,[賦予這個答案](http://stackoverflow.com/a/621295/2718186)。 – MicroVirus

+0

該EXE文件是特殊的,但沒有人但用戶曾試圖找到它。您無法獲得「託管環境」的保修。 –

回答

3

不,這樣做沒有問題。它工作得很好,除非在某處有可執行文件名的硬編碼引用。

如所解釋的in the MSDN(粗體是礦):

的名稱和應用程序配置文件的位置取決於該應用程序的主機上,它可以是以下之一:

  • 可執行 - 託管應用程序。

    由可執行主機託管的應用程序的配置文件與應用程序位於同一目錄中。配置文件的名稱是擴展名爲.config的應用程序的名稱。 例如,名爲myApp.exe的應用程序可以與名爲myApp.exe.config的配置文件相關聯。

更新:如@MicroVirus在評論中指出的那樣,你可以,如果你存儲在默認位置,它使用AppDomain.CurrentDomain.FriendlyName其默認爲exe名用戶的設置有問題。但在你的情況下,作爲安裝人員改變名稱,它應該沒有問題(用戶設置將被保存在正確的路徑,一旦他們被保存)