How do AssemblyInfo attributes map to Win32 VERSIONINFO?

南楼画角 提交于 2019-11-27 18:12:34

问题


When you view the properties for a binary file that contains a VERSIONINFO resource, Windows adds a "Version" tab, which displays that information.

Is there a list of which .NET assembly attributes map to which VERSIONINFO fields, so we can control these easily for our .NET assemblies?


回答1:


Concerning the "fixed Info":

PRODUCTVERSION and FILEVERSION are set from [AssemblyInformationalVersion] and [AssemblyFileVersion] respectively.

FILEOS, FILETYPE are most likely set by the compiler.

Concerning the Var File Info

[AssemblyCulture] maps to "Translation" (I guess!)

Concerning the String File Info

[AssemblyCompany] maps to "CompanyName"
[AssemblyDescription] maps to "Comments"
[AssemblyFileVersion] maps to "FileVersion"
[AssemblyTitle] maps to "FileDescription"
[AssemblyInformationalVersion] maps to "ProductVersion"
[AssemblyProduct] maps to "ProductName"
[AssemblyCopyright] maps to "LegalCopyright"

I think "InternalName" and "OriginalFile" are set to the name of the DLL or EXE, respectively.




回答2:


The [AssemblyFileVersion] attribute (among others) does this, I believe - for example:

[assembly:AssemblyFileVersion("1.2.3.4")]

You should be able to find this setting in the default AssemblyInfo.cs file generated by the IDE; if not, declare it yourself (as above).

You might also want to look generally at the "Assembly Information..." dialog in project properties, which provides access to this and others.



来源:https://stackoverflow.com/questions/629206/how-do-assemblyinfo-attributes-map-to-win32-versioninfo

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!