查询文件的版本号Copyright信息
目前找到的实用的方法有两种,一种是cmd中利用wmic的库,一种是C#中的GetVersionInfo()方法。
CMD中获取:
获取单个文件:
遍历某文件夹下所有文件名及版本号:
如需从c盘切换到d盘输入 d: 即可
wmic datafile where "drive='d:' and path='//Git//' and Extension='exe'" get name
wmic datafile where "drive='d:' and path='//Git//' and Extension='exe'" get version
结果复制到excel中可相互对照,或许有更好的查询语法,后面发现了再补充。
C#代码获取:
遍历某文件夹中dll和exe文件版本信息:
DirectoryInfo folder = new DirectoryInfo(Path.Combine(Environment.SystemDirectory, @"../../Program Files/xxx"));
string file = "";
foreach (FileInfo nextFile in folder .GetFiles())
{
if (nextFile.Extension == ".dll" || nextFile.Extension == ".exe")
{
file = nextFile.Name;
Console.WriteLine("file = " + file);
string path = Path.Combine(Environment.SystemDirectory, @"../../Program Files/xxx/", $"{file}");
FileVersionInfo fileVersionInfo = FileVersionInfo.GetVersionInfo(path);
Console.WriteLine("ProductVersion = " + fileVersionInfo.ProductVersion);
Console.WriteLine("FileVersion = " + fileVersionInfo.FileVersion);
Console.WriteLine("Copyright = " + fileVersionInfo.LegalCopyright);
Console.WriteLine("=======================================================");
}
}
Environment.SystemDirectory 路径为 C:/Windows/system32
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/283204.html