diff --git a/Utils/Properties/AssemblyInfo.cs b/Utils/Properties/AssemblyInfo.cs index bac759f..b213bc0 100644 --- a/Utils/Properties/AssemblyInfo.cs +++ b/Utils/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // Sie können alle Werte angeben oder die standardmäßigen Build- und Revisionsnummern // übernehmen, indem Sie "*" eingeben: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.3.1")] -[assembly: AssemblyFileVersion("1.0.3.1")] +[assembly: AssemblyVersion("1.0.3.2")] +[assembly: AssemblyFileVersion("1.0.3.2")] diff --git a/Utils/Updater.cs b/Utils/Updater.cs index 3bd3631..7a7c2a9 100644 --- a/Utils/Updater.cs +++ b/Utils/Updater.cs @@ -111,7 +111,7 @@ namespace BlubbFish.Utils { try { Stream stream = WebRequest.Create(this.url + "version.xml").GetResponse().GetResponseStream(); String content = new StreamReader(stream).ReadToEnd(); - List updates = new List(); + Boolean update = false; XmlDocument doc = new XmlDocument(); doc.LoadXml(content); foreach (XmlNode node in doc.DocumentElement.ChildNodes) { @@ -120,10 +120,11 @@ namespace BlubbFish.Utils { for(Int32 i=0;i 0) { + if (update) { this.UpdateResult(this, new UpdaterEventArgs(true, "Update verfügbar")); return; } @@ -141,12 +142,32 @@ namespace BlubbFish.Utils { /// public Boolean Update(Boolean afterExit = true) { try { - - } catch(Exception e) { + if (afterExit) { + this.UpdateAfter(); + } else { + this.UpdateNow(); + } + } catch (Exception e) { this.ErrorRaised?.Invoke(this, new UpdaterFailEventArgs(e)); return false; } return true; } + + private void UpdateAfter() { + this.UpdateNow(true); + } + + private void UpdateNow(Boolean forAfter = false) { + foreach (VersionInfo file in this.versions) { + if (file.HasUpdate) { + Stream stream = WebRequest.Create(this.url + file.Filename).GetResponse().GetResponseStream(); + FileStream target = new FileStream(file.Filename + (forAfter ? "_" : ""), FileMode.Create); + stream.CopyTo(target); + target.Flush(); + target.Close(); + } + } + } } } diff --git a/Utils/bin/Release/Utils.dll b/Utils/bin/Release/Utils.dll index c6d2cdc..6b08d69 100644 Binary files a/Utils/bin/Release/Utils.dll and b/Utils/bin/Release/Utils.dll differ