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

9
我该如何为我的 .Net 程序集创建自定义属性,以便在 Windows 资源管理器的详细信息选项卡中显示?
类似于“文件说明”、“类型”、“产品版本”等内容。
更新:引用我的评论来回答 Lars 的问题...“虽然我希望能够在 Visual Studio 中完成此操作,但这绝对不是我的优先事项。实际上,我希望将任何解决方案集成到现有的 nant 构建过程中。因此,在编译后影响程序集是完全可接受的。你听说过这样的工具吗?”
进一步更新:我不确定我所说的是否是属性,为了更清楚地说明,我想在以下属性页面中创建一个条目...

你是不是指自定义属性而不是属性? - Lars Truijens
更新了带有屏幕截图的问题。 - Rory Becker
3个回答

5
你的编译器不支持它。 AssemblyFileVersionAttribute 和所有工作,因为编译器在您的程序集中生成一个名为 VERSIONINFO 的 win32 资源,并将该信息保存在其中。这就是 Windows 所读取的内容。其他属性只是与代码一起保存为元数据。
你可以制作一个工具,在编译后更改 VERSIONINFO 资源。

虽然我本来想在Visual Studio内完成这个任务,但这并不是我的首要任务。实际上,我希望将任何解决方案集成到nant构建过程中,因此在编译后影响程序集完全可以接受。你听说过这样的工具吗? - Rory Becker
任何资源编辑器都可以做到这一点。例如http://www.heaventools.com/rtconsole-update-version-info.htm - Lars Truijens

2

虽然还不是最终答案,但一个可行的方法是使用以下方式:

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

在“评论”下面会显示这个内容。(还在研究中,这是我想要已久的东西。)

1
我强烈感觉通过Visual Studio不可能实现这一点。我的谷歌搜索能力并不弱,但目前似乎互联网上没有答案。 - KyleLanser
不适用于Win10。没有__Comments__。 - zwcloud

0
唯一能够从命令行控制 VERSIONINFO 结构的任何字段并因此能够在构建过程中添加附加属性的工具是 Resource Tuner Console:
http://www.reseditor.com/rtc-solution-version-info.htm $199 的价格似乎有点高... 但如果您不想花费数天时间在 C/C++ 上折腾,那么这就是一个绝佳的选择。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接