我有一个包含大量文件夹和可执行文件的文件夹,我想获得可执行文件列表及其版本号。
我有几件事要处理:
Anything on windows 7
Cygwin
C#
示例
\folder\temp.exe
\folder\folder2\temp2.exe
\folder\folder3\temp3.exe
我希望我的结果是
temp.exe Version 1.0.1.2
temp2.exe Version 4.45.6.7
temp3.exe Version 1.0.0.0
目前我使用此命令来获取.exe列表,但我似乎无法获取版本号。
dir c:\temp\ /s | find ".exe"
答案 0 :(得分:2)
您可以使用类似的内容来获取特定目录中的exe文件并获取版本信息:
DirectoryInfo di = new DirectoryInfo(path);
var files = di.GetFiles("*.exe");
foreach (var file in files)
{
if (file != null)
{
var version = FileVersionInfo.GetVersionInfo(file.FullName).FileVersion;
Console.WriteLine($"{file.Name} Version {version}");
}
}