如何从文件路径获取.exe文件版本号

时间:2012-07-05 18:04:35

标签: c#-4.0 version fileversioninfo

我使用的是带有C#代码的.Net 3.5 / 4.0。

我正在尝试在我的C:驱动器上获取exe文件的版本号。

例如路径为:c:\ Program \ demo.exe。如果demo.exe的版本号是1.0。

如何使用此路径获取版本号?

7 个答案:

答案 0 :(得分:121)

您可以使用FileVersionInfo.ProductVersion从路径中获取此内容。

var versionInfo = FileVersionInfo.GetVersionInfo(pathToExe);
string version = versionInfo.ProductVersion; // Will typically return "1.0.0" in your case

答案 1 :(得分:18)

在接受的答案中,引用了“pathToExe”。

可以按如下方式检索和使用此路径:

var assembly = Assembly.GetExecutingAssembly();
var fvi = FileVersionInfo.GetVersionInfo(assembly.Location);
var version = fvi.FileVersion; // or fvi.ProductVersion

希望这可以节省一些不必要的额外步骤。

答案 2 :(得分:6)

Program是您的班级名称:

Console.WriteLine("Version = " + typeof(Program).Assembly.GetName().Version.ToString()) ;

答案 3 :(得分:4)

我不确定这是否是您要找的,但是:

http://www.daniweb.com/software-development/csharp/threads/276174/c-code-to-get-dll-version

它说

int i;

// Get the file version for the notepad.
FileVersionInfo.GetVersionInfo(Path.Combine(Environment.SystemDirectory, "notepad.exe"));

FileVersionInfo myFileVersionInfo =  FileVersionInfo.GetVersionInfo(Environment.SystemDirectory + "\\notepad.exe");

// Print the file name and version number.
Console.WriteLine("File: " + myFileVersionInfo.FileDescription + '\n' + "Version number: " + myFileVersionInfo.FileVersion);

答案 4 :(得分:2)

使用,它起作用:

using System.Reflection;

string v = AssemblyName.GetAssemblyName("Path/filename.exe").Version.ToString();

答案 5 :(得分:1)

这很好用并返回 AssemblyVersion 中提供的版本:

using System.Reflection;

infoFileVersionInfo versInfo = FileVersionInfo.GetVersionInfo("path.exe");
string version = $"v{versInfo.FileMajorPart}.{versInfo.FileMinorPart}.{versInfo.FileBuildPart}";

答案 6 :(得分:0)

//Example your file version is 1.0.0.0
//Solution 1
Dim fileVer As FileVersionInfo = FileVersionInfo.GetVersionInfo(Environment.CurrentDirectory + "\yourExe.exe")
yourLabel.Text = fileVer.FileVersion
//Solution 2
//Get File Version Number
yourLabel.Text = Application.ProductVersion
//Both solution will get output 1.0.0.0