// 对比配置中已安装插件和激战2目录中已安装插件是否匹配 // 应当只在程序启动时执行一次 public void CheckInstalledAddonList(string GameType) { var InstalledAddons = GetInstalledAddonList(GameType); var GamePath = GameType == "MF" ? MFPath : GFPath; var ShouldDeleteNames = new List <string>(); foreach (var InstalledAddon in InstalledAddons) { var MainDllPath = Path.Combine(GamePath, InstalledAddon.MainDll); if (!File.Exists(MainDllPath)) { ShouldDeleteNames.Add(InstalledAddon.Name); return; } InstalledAddon.Version = UtilHelper.GetExeFileVersion(MainDllPath); } foreach (var ShouldDeleteName in ShouldDeleteNames) { InstalledAddons = InstalledAddons.Where(Item => Item.Name != ShouldDeleteName).ToList(); } SaveInstalledAddonList(InstalledAddons, GameType); }