AssemblyTitle一旦设置就永远不会改变,我希望每个配置都改变它
我想根据产品名称更改下面屏幕截图中显示的文字。 我知道,该文本来自Assembly.Title属性,它是一个只读属性,因此无法在运行时更改。 那么如何在编译时更改它? 我们将应用程序出售给多个客户,应用程序的名称应根据客户进行更改。 我们为每位客户提供配置。 因此,在构建时,应根据配置选择程序集标题。
有什么建议怎么解决这个问题?
更新:
我尝试了评论中给出的一些建议,我发现如下:
使用项目属性中的程序集信息弹出窗口设置文本或直接在AssemblyInfo.cs文件中更改它后,它在任务栏中正确显示。
如果我再次更改它,更改的文本不会显示在任务栏中,即。 它始终显示第一次设置的文本。
我尝试删除文件,甚至重新启动系统,但它没有帮助。
然后我重命名了文件(即exe文件),然后它正确显示了更改的文本 。
如果我将其重命名为原始名称,则会显示第一个设置文本。
可能是什么原因?
在AssemblyInfo.cs中(在VisualStudio项目的“属性”下),您将找到在如下属性中指定的程序集标题:
[assembly: AssemblyTitle("MyAssembly")]
您应该能够使用编译器常量包装它:
#if SOME_MODE [assembly: AssemblyTitle("SomeName")] #else [assembly: AssemblyTitle("ADifferentName")] #endif