利用反射获取,调试过程中,偶然发现部分dll文件,获取版本号时,版本号一直为0.0.0.0,详细原因为查到;
方法一:
//通过反射加载dll文件,然后获取其版本信息
Assembly assembly = Assembly.LoadFile(_Path);
AssemblyName assemblyName = assembly.GetName();
Version version = assemblyName.Version;
Console.WriteLine(version);
方法二:与方法一类似,因为除非卸载整个AppDomain,不然Assembly一旦加载了就不好卸掉。
AssemblyName assemblyName2 = AssemblyName.GetAssemblyName(_Path);
Version version2 = assemblyName2.Version;
Console.WriteLine(version2);
利用磁盘信息获取;
方法三:
System.Diagnostics.FileVersionInfo fvi = System.Diagnostics.FileVersionInfo.GetVersionInfo(_Path);
Console.WriteLine(fvi.FileVersion);