diff --git a/app/Updates.cs b/app/Updates.cs index 72ea4a1c..cf448e3d 100644 --- a/app/Updates.cs +++ b/app/Updates.cs @@ -102,6 +102,8 @@ namespace GHelper LoadUpdates(true); } + + private Dictionary GetDeviceVersions() { using (ManagementObjectSearcher objSearcher = new ManagementObjectSearcher("Select * from Win32_PnPSignedDriver")) @@ -186,7 +188,8 @@ namespace GHelper { _VisualiseNewDriver(position, newer, table); }); - } else + } + else { _VisualiseNewDriver(position, newer, table); } @@ -206,6 +209,17 @@ namespace GHelper }); } + + static string CleanupDeviceId(string input) + { + int index = input.IndexOf("&REV_"); + if (index != -1) + { + return input.Substring(0, index); + } + return input; + } + public async void DriversAsync(string url, int type, TableLayoutPanel table) { @@ -275,6 +289,7 @@ namespace GHelper for (int k = 0; k < driver.hardwares.GetArrayLength(); k++) { var deviceID = driver.hardwares[k].GetProperty("hardwareid").ToString(); + deviceID = CleanupDeviceId(deviceID); var localVersions = devices.Where(p => p.Key.Contains(deviceID, StringComparison.CurrentCultureIgnoreCase)).Select(p => p.Value); foreach (var localVersion in localVersions) {