From bd58736b213c87e142267ef7ef7f213419caadf7 Mon Sep 17 00:00:00 2001 From: YFdyh000 Date: Wed, 15 Apr 2020 08:06:06 +0800 Subject: [PATCH] Fix startup crash when the file does not exist --- Code/IPFilter/Apps/DelugeApplication.cs | 12 +++++++----- Code/IPFilter/Apps/EmuleApplication.cs | 15 ++++++++++----- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/Code/IPFilter/Apps/DelugeApplication.cs b/Code/IPFilter/Apps/DelugeApplication.cs index 78d905e..5ed82ec 100644 --- a/Code/IPFilter/Apps/DelugeApplication.cs +++ b/Code/IPFilter/Apps/DelugeApplication.cs @@ -50,16 +50,18 @@ public Task DetectAsync() var result = ApplicationDetectionResult.Create(this, "Deluge", Path.GetDirectoryName(path)); var exe = new FileInfo(path); - if (!exe.Exists) + if (exe.Exists) + { + var version = FileVersionInfo.GetVersionInfo(exe.FullName); + result.Description = version.ProductName; + result.Version = version.FileVersion; + } + else { Trace.TraceInformation("Deluge exe not found @ " + path); result.IsPresent = false; } - var version = FileVersionInfo.GetVersionInfo(exe.FullName); - result.Description = version.ProductName; - result.Version = version.FileVersion; - return Task.FromResult(result); } diff --git a/Code/IPFilter/Apps/EmuleApplication.cs b/Code/IPFilter/Apps/EmuleApplication.cs index 7675545..f736071 100644 --- a/Code/IPFilter/Apps/EmuleApplication.cs +++ b/Code/IPFilter/Apps/EmuleApplication.cs @@ -29,12 +29,17 @@ public Task DetectAsync() var result = ApplicationDetectionResult.Create(this, DefaultDisplayName, installLocation); var exe = new FileInfo(Path.Combine(installLocation, "emule.exe")); - if (!exe.Exists) result.IsPresent = false; + if (exe.Exists) + { + var version = FileVersionInfo.GetVersionInfo(exe.FullName); + result.Description = version.ProductName; + result.Version = version.FileVersion; + } + else + { + result.IsPresent = false; + } - var version = FileVersionInfo.GetVersionInfo(exe.FullName); - result.Description = version.ProductName; - result.Version = version.FileVersion; - return Task.FromResult(result); } }