From 2bbe2e023bde99cb2609686011c98bc3ec0103a9 Mon Sep 17 00:00:00 2001 From: BlubbFish Date: Wed, 26 Apr 2017 21:47:46 +0000 Subject: [PATCH] [WP] Update functionality --- Properties/AssemblyInfo.cs | 4 ++-- Updater.cs | 29 +++++++++++++++++++++++++---- bin/Release/Utils.dll | Bin 23552 -> 23552 bytes 3 files changed, 27 insertions(+), 6 deletions(-) diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs index bac759f..b213bc0 100644 --- a/Properties/AssemblyInfo.cs +++ b/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/Updater.cs b/Updater.cs index 3bd3631..7a7c2a9 100644 --- a/Updater.cs +++ b/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/bin/Release/Utils.dll b/bin/Release/Utils.dll index c6d2cdc74684bbe4084fe275b42a90dd43d2b87d..6b08d694580a0f17b6c17c930a20c6cc4f77c24b 100644 GIT binary patch delta 7094 zcmbW6d302DmdEe!_m+CKze>oSK#C+%WC0Qa0g)jQ6p_f55Q#>UC?I>01$$zUszMfN zK!^_oM>z&uj@n2M1`xr8D2q7_E^T*<%V|P4o6 zZ-4LoepQJc5YYo-^MmU3Nusu6L#DjGrQ?Mf-`C9mQvqL5fL5g=nCR&Q@Sr}>1dwS3 zWua9o2FaVMtd(L#T5bzQ@O2ZuC1`MIG{CE60Ky7Zm08o|X0g~hBh$q^>yjKOnymrK zonnc#Lb*F_34pGIG5}nKi3uXK6lI}{4C@Ew9OMN(d0Xa(?32JB{<~3IUEJZtr zcA}P`h2~lPv?ZKWRAMCPS0(9JC3Wr8mMLOcSE}<#r!PjWmiYAqscNBB*3pD;`Wke} zcI=2+7|>Enym4FV;WgHj#8f++6%Y5PFxecACZ^@aOAkO-UXgN5frA2EVH&!8s-kKw z_jSFN__`?BfbQ@P?7O3RkKlnk^poeUxMy>p2gmtq>&2v(MZGmAxh#_GZrOuH^Yrjb z_z~_R>?Q0&ct&l*={Lgr(Qd8A$E_6V>EItzepL#|c&g z+NNY&#t`+w8DE-V@yLWLAsR$L4PArv6(;?xR7%LgSc*HKrOZmy0$M!y(EO68jqpKC zzxEERF(o~@Fip1S(gdb7w@X;s;-(QlVr@<7A9)PTKd0E?zznZ5 zdzK z*0(b+wfRF7JM+?HD27pYg7}|gEG)xsa5$Zx1UvIGWaxej@65|=KF#@AG87?4=rDB) z7e}L~n1m$jXxf0=|LKOfy1s=mc;3Maa$sXb7NP)!ICN$vt?<-~%03^&H+oIWwzZ-Y@{VtaB#LoHPMH{}uHFE0!@l z?Qv8q@lCfHwg^sq<6VPucrqhJq*br1pS{~qp9J@;j}i|U>seuvRy7x5L7JTG(aE^*nDNEbY7 zmit`LV-Q#Ph#TGI*#39eBOIBFa(exZ*soDMzK^Z0tek=yxTm?MVz^+K8T7j#q6Pgv z==L9U`d~BjxI*?AOY|QsvaEvs8IdDi)mH(6|4jG_)f{ZYjoO5dSQ%)MI>E|`4? z-BivCnXGo1q)fF9pJW=`z;Z2DlMOSunh+K& zglwn3+&A zhWohA@BDbLZ^Xy@YL@G{i4m}lQ>VBobqp$M{&Q?_Bb4LyN9x}&lhiis=w?_qSmaS9n#h+#KzD082O?5!B3 zvXM_woODtHWxigtA22^dF7ls8c8jl6T|Wo^sn$g6)CvC>1vcI0Y>xYA85Wghfww@zngjd)a@ zmW@vjh^3zO;Ee@$vwGCnplF(ac2;ZPcRm-YPF69zEsKL?MLT_K@j&_9Kr9SvV4_(s zH1On->PS8BNzruhv08&QXIPH}2Ti)yyA~f;W7!)sR(q3B-Po5C)Lbw#t_+_!NOQv- zc4nFxL^ZcBv(VB8-rygpCBQyABjy}q)eg)UU7;nydvPDOI#KHfg?N4dcod#fZqbsV z!B!7>_KH-{@t8z?-)~l1FAmHoxJ}D|R`$h5kOg~K#pfmqUSUOZ(`bD=uztWL$40bKDnsU;VdS8pRF()IVUCV>v1(X?s7JSr(V79GZw%*FQLBScb z+_`Bp3;jCYYw_1HZ9C3lf!&K$yg~&q0k;Wk4||cR7Qi%C9q=b0wTRUkX!Bf_1-zlq z_!d}gxfv0vxd;w%M!c>fcqd+(*Q*G=jF&b#jg?vvB))>D_(Ml$JUCq_*F4z$F@X763YB|5G#FCOoMCt zlnFCnie2z}tx{A$ja_iEW{;)WE}bYC4X;20E`wz4fY89d3nPcII%nEN_Lqwi0-pp9P0lQKj!|v*6>nGM>?% z6Ls(xTkX~=v^x00R=;vpM#LTPtu0r%Ox%Ai+3H=TQrrpZsQ8qAqL^?ecy0A7=SZy{ zl5B+!8dTY=j=?OWQZ&G}cnsAiS_4%93Q*T#;x1bq6F&8f7Ma~Ao$5JlZlAiWT+kLk z?r3sQ!Asggcsj0(t!kxM1iM(pj84_WeR!W8t9Mn3#qgRPTZlti49D!)hgfb2ykp1C zV!0&|_|Og>#5D}VX*>89u3;F?*|C?kwXhVvw$)KB2^GDrjH$_1G$uvogDb|438(7P zm-WSHNNu)?&&7Rk3u#LAsVO>sAF-8F?XTmB*j7|hpg~tmCUpXjx9*>j~j&qJ}TjTPxj7{v>WLit}%dKd>$NKkt-B^gt zDX`vWy_et5`hET=UzyJ|1r+;<*Lkdjf=aQ;sxKHZmNF$~QWNQZvTs(%zPjn3Yz1z? zQ;o`*0@|$i3kFC2-=(mXf1)kF1D1h-Zzr7f2s}a1MxO>}BOVu?@n{b#W{zf7Fefpm zGi#ZR$RwE0b`!IW*^Sik_a|bE+0XWT=PQOr(a$#)qdz*QLX)7JelSJUAXPI`haV?A zi|~|t-oG5$M0p^F_Cj+ld=9kn#khb6bAAK4nDaUm!hXm5$T!U8=%LIuaoP7R^9N)l z*3iSvlV2C>#9w?K(IGxJ0?1=(Ks?5t$3$izIaxd}c0iUmg9UPspBPC{3g1~9i&DH7 z%p1iXfzJ#q_N29^XiS9q-Xq4kW{V!-3RH?Vaa&-4c%QrYyx8qsEItzN8ZF{FtSu(a zh-aK@xn?}*!xr-?@ewHabfRv(D7wW~9Ns!{N!u$v7pEPsV7CebuZxRV_D%5())_;) zLA)&{0L|hAm@-q8qM&K4!L`+=XINCG*ns5(|eH{sN-lg&+%-YVxk z#s1~IG~FT-N4bdYN;u_sRu)TI)(PCL4ScHJg89o~y0}?AE-U0?%6oDH zthPFa=HPtC#M97ic$KF)e-~c*%i&eDV`2+3TbVAe)k>9G`FEup?Ng3Y

Y;1P}ED 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