2011-09-19 126 views
13

什么是最好的方法来改变AssemblyInfo.cs创建的默认值,例如,我不想在AssemblyCompany和AssemblyCopyright设置AssemblyInfo.cs的默认值

微软位
[assembly: AssemblyCompany("Microsoft")] 
[assembly: AssemblyCopyright("Copyright © Microsoft 2011")] 

回答

11

大概只在注册表中:

32 bit: HKLM\Software\Microsoft\Windows NT\CurrentVersion 
64 bit: HKLM\Software\Wow6432Node\Microsoft\WindowsNT\CurrentVersion 

Changing the default values for AssemblyInfo.cs

而且这里是SO帖子:How to change registration company name for Visual Studio 2008?

+1

第一个链接的使用似乎被打破。更多的解释会很棒。 –

+0

从另一个源第一个环节是:http://dotnetwithme.blogspot.com/2007/04/visual-studio-tip-how-to-change-default.html –

+0

懒人式的我 - 谁使用注册表路径开启器实用程序,这里是正确的64位路径:HKLM \ Software \ Wow6432Node \ Microsoft \ Windows NT \ CurrentVersion。 –

0

如果你的意思是当你创建一个新的VS项目时,它应该默认你的公司名称,你可以修改项目模板,但是这将需要不要e在每个开发机器上。

如果你想减轻你可以使用一个SharedAssemblyInfo.cs文件管理解决方案中的所有组件的这个共同数据的PITA。在解决方案级别创建它,然后将其添加到所有其他项目中,方法是将其添加为链接文件(添加对话框在按钮上有一个小型弹出窗口)。这种方法组装从this SO post也版本

更多信息常用。

+0

感谢指针使用SharedAssemblyInfo.cs – SteveC

12

看来这个信息被嵌入到项目模板定义中。举例来说,如果我创建使用“控制台应用程序”项目模板的项目,它使用:

C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\ProjectTemplates\CSharp\Windows\1033\ConsoleApplication.zip 

寻找该zip文件里面有一个AssemblyInfo.cs文件包含:

[assembly: AssemblyCompany("$registeredorganization$")] 
[assembly: AssemblyProduct("$projectname$")] 
[assembly: AssemblyCopyright("Copyright © $registeredorganization$ $year$")] 

所以如果你不能改变你的机器的注册信息像其他人所说,你可以只更新此文件在这里

+0

感谢您的指针...我用注册表舌尖它的编辑,而不是去通过每一个zip文件的同一个地方,但我们知道他们在那里是非常有用的 – SteveC

+0

看起来改变项目模板的格式不起作用,我重新安排了年份和组织,但新项目仍使用旧格式。 – Yuan

+0

在64位机器上查找'C:\ Program Files(x86)'而不是'Program Files'。 –

3

小offtopic:每个项目都有自己的AssemblyInfo.cs。为了保持干燥,我建议一个GlobalAssemblyInfo