2016-03-15 38 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名用户的设置有问题。但在你的情况下,作为安装人员改变名称,它应该没有问题(用户设置将被保存在正确的路径,一旦他们被保存)