C# 应用程序校验程序集中的版本信息是否被修改过
以下方法只校验了文件版本,如果想要校验其他属性信息,可自行扩展
public static class AssemblyInfoReader { /// <summary> /// 校验指定文件(如exe)的版本信息是否与当前程序集的版本信息一致 /// </summary> /// <returns>是否一致</returns> public static bool CheckFileVersionMatchesAssembly() { try { // 获取当前程序集的版本信息 var assembly = System.Reflection.Assembly.GetExecutingAssembly(); var fileVersionAttr = assembly.GetCustomAttribute<System.Reflection.AssemblyFileVersionAttribute>(); var assemblyFileVersion = fileVersionAttr?.Version; // 获取目标文件的版本信息 var fileVersionInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(Process.GetCurrentProcess().MainModule.FileName); var fileFileVersion = fileVersionInfo.FileVersion; //MessageBox.Show($"assemblyFileVersion:{assemblyFileVersion}、fileFileVersion:{fileFileVersion}"); return assemblyFileVersion == fileFileVersion; } catch (Exception ex) { return true; } } }

浙公网安备 33010602011771号