From 59015f438eb06e6df10add4163d51eee2d1dec38 Mon Sep 17 00:00:00 2001 From: Michael Bucari-Tovo Date: Wed, 27 Jul 2022 00:36:13 -0600 Subject: [PATCH] Add auto app update to windows avalonia --- .../LibationAvalonia/LibationAvalonia.csproj | 3 + .../Views/MainWindow/MainWindow.axaml.cs | 88 ++++++++++++++++-- Source/LibationAvalonia/ZipExtractor.exe | Bin 0 -> 100352 bytes 3 files changed, 85 insertions(+), 6 deletions(-) create mode 100644 Source/LibationAvalonia/ZipExtractor.exe diff --git a/Source/LibationAvalonia/LibationAvalonia.csproj b/Source/LibationAvalonia/LibationAvalonia.csproj index 572e61f6..06e66b4d 100644 --- a/Source/LibationAvalonia/LibationAvalonia.csproj +++ b/Source/LibationAvalonia/LibationAvalonia.csproj @@ -129,6 +129,9 @@ Always + + Always + \ No newline at end of file diff --git a/Source/LibationAvalonia/Views/MainWindow/MainWindow.axaml.cs b/Source/LibationAvalonia/Views/MainWindow/MainWindow.axaml.cs index f8f0d155..0bf8611f 100644 --- a/Source/LibationAvalonia/Views/MainWindow/MainWindow.axaml.cs +++ b/Source/LibationAvalonia/Views/MainWindow/MainWindow.axaml.cs @@ -8,8 +8,7 @@ using LibationAvalonia.ViewModels; using LibationFileManager; using DataLayer; using System.Collections.Generic; -using System.Linq; -using LibationAvalonia.Dialogs; +using System.Threading.Tasks; namespace LibationAvalonia.Views { @@ -67,11 +66,88 @@ namespace LibationAvalonia.Views private async void MainWindow_Opened(object sender, EventArgs e) { - /* - var charReplace = new EditReplacementChars(); +#if !DEBUG + if (App.IsWindows) + { + try + { + await Task.Run(checkForAndDownloadUpdate); + } + catch(Exception ex) + { + Serilog.Log.Logger.Error(ex, "An error occured while checking for app updates."); + return; + } + } +#endif + } - await charReplace.ShowDialog(this); - */ + private async Task checkForAndDownloadUpdate() + { + AppScaffolding.UpgradeProperties upgradeProperties; + try + { + upgradeProperties = AppScaffolding.LibationScaffolding.GetLatestRelease(@"Libation\.\d+\.\d+\.\d+-win-avalonia.zip"); + + if (upgradeProperties is null) + return; + } + catch (Exception ex) + { + Serilog.Log.Logger.Error(ex, "Failed to check for update"); + return; + } + + if (upgradeProperties.ZipUrl is null) + { + Serilog.Log.Logger.Information("Download link for new version not found"); + return; + } + + //Silently download the update in the background, ave it to a temp file. + + var zipPath = System.IO.Path.GetTempFileName(); + try + { + System.Net.Http.HttpClient cli = new(); + using (var fs = System.IO.File.OpenWrite(zipPath)) + { + using (var dlStream = await cli.GetStreamAsync(new Uri(upgradeProperties.ZipUrl))) + await dlStream.CopyToAsync(fs); + } + } + catch (Exception ex) + { + Serilog.Log.Logger.Error(ex, "Failed to download the update: {pdate}", upgradeProperties.ZipUrl); + return; + } + + var result = MessageBox.Show($"{upgradeProperties.HtmlUrl}\r\n\r\nWould you like to upgrade now?", "New version available", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); + + if (result != DialogResult.Yes) + return; + + var thisExe = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName; + var thisDir = System.IO.Path.GetDirectoryName(thisExe); + + var args = $"--input {zipPath} --output {thisDir} --executable {thisExe}"; + + var zipExtractor = System.IO.Path.Combine(System.IO.Path.GetTempPath(), "ZipExtractor.exe"); + + System.IO.File.Copy("ZipExtractor.exe", zipExtractor, overwrite: true); + + var psi = new System.Diagnostics.ProcessStartInfo() + { + FileName = zipExtractor, + UseShellExecute = true, + Verb = "runas", + WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal, + Arguments = args, + CreateNoWindow = true + }; + + System.Diagnostics.Process.Start(psi); + Environment.Exit(0); } public void ProductsDisplay_Initialized1(object sender, EventArgs e) diff --git a/Source/LibationAvalonia/ZipExtractor.exe b/Source/LibationAvalonia/ZipExtractor.exe new file mode 100644 index 0000000000000000000000000000000000000000..29e0a3b3e242ede8633fc6fc4caa16f360a5cd9a GIT binary patch literal 100352 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