如何为程序集创建自定义属性?

时间:2008-10-10 15:16:30

标签: .net assemblies attributes

如何为.Net程序集创建自定义属性,然后在Windows资源管理器的“详细信息”选项卡下可以看到该属性?

与“文件描述”,“类型”,“产品版本”等等并行的东西

更新:引用我对Lars的评论......“虽然我希望从Visual Studio中做到这一点,但这当然不是我的首要任务。实际上我希望将任何解决方案集成到现有的nant构建过程中。所以在编译后影响程序集是完全可以接受的。你有没有听说过这样的工具?“

进一步更新:我不确定我所谈论的是否是属性,在以下属性页的条目中澄清我想要创建的内容......

alt text

3 个答案:

答案 0 :(得分:5)

您的编译器不支持它。 AssemblyFileVersionAttribute和所有工作都是因为编译器在程序集中生成一个名为VERSIONINFO的win32资源,其中包含该信息。这就是Windows正在阅读的内容。其他属性只是与代码一起保存为元数据。

编译后,您可以创建一个工具来更改VERSIONINFO资源。

答案 1 :(得分:2)

它还没有答案,但是使用1/2方式的黑客:

[assembly: AssemblyDescription("One Line of Content Here")]

这显示在“评论”下。

(仍在研究,这是我一段时间以来想要的东西。)

答案 2 :(得分:1)

可以从命令行控制VERSIONINFO结构的任何字段,因此能够在构建过程中添加其他属性的唯一工具是Resource Tuner Console:
http://www.reseditor.com/rtc-solution-version-info.htm

199美元的价格看起来有点高......但是如果你不想花费几天时间用C / C ++来捣乱,那么这就是偷窃。