我可以通过C#中的命名空间FileVersionInfo获取文件版本信息。在FileVersionInfo中,如果文件版本为空,则我们无法获取其他信息,如产品版本、公司名称等。当我们右键单击文件并在属性窗口中选择详细信息选项卡时,我可以看到文件版本信息,但我无法通过C#代码获取该值。那么,我可以在不使用FileVersionInfo的情况下获得文件版本信息吗?是否有其他方法可以获取文件版本信息。
发布于 2016-07-04 19:47:52
试试这个:-
Assembly assembly = Assembly.LoadFrom(@"D:\exePath\yourexe.exe");
Version ver = assembly.GetName().Version;发布于 2016-07-04 20:53:12
要获取文件版本,您必须获取由AssemblyFileVersionAttribute设置的版本,例如:
[assembly: AssemblyFileVersion("3.2.10.0")]下面是读取属性的扩展方法的代码:
public static Version GetFileVersion(this Assembly assembly)
{
AssemblyFileVersionAttribute attribute = assembly.GetCustomAttribute<AssemblyFileVersionAttribute>();
return attribute == null ? null : new Version(attribute.Version);
}要加载程序集,请使用前面提到的Assembly.LoadFrom方法。
https://stackoverflow.com/questions/38183629
复制相似问题