Win
Autoupdate windows aplikacije
Inspiracija nije slučajno stanje duha, nego je odgovor na problem koji Vas dugo muči - definitivno. Kad sam se dovoljno nagnjavio slanjem novih verzija programa dobio sam ideju.
Nova verzija je gnjavaža za autora i korisnika programa. Ili ne radi mail ili ne prima (zipovani) exe, ili operater ne zna raspakovat, ili nema vremena instalirat novu verziju i još bezbroj ili. A sve to se lako izbjegne kada imate ideju.
Ideja je stavit novu verziju ne web. Aplikacija prije startanje provjerava datum nove verzije, i ako je novija od aktualne, spušta je za slijedeće pokretanje programa, bez znanja i uplitanja operatera. Nova verzija se ne starta trenutno da se ne zbunjuje operatera. Model garantira da će novija verzija biti ugrađena, što je bio česti propust kod aljkavih operatera.
Na Web strani treba kreirat publicdirektory/neki poddirektorij, recimo 'AutoUpdate'. U njega smjestimo nove verzije aplikacija i jedan file nazovimo ga 'GetFileDate.php'. GetFileDate.php dobiva iz win aplikacije preko 'WebRequest' upit da provjeri kada je kreirana verzija aplikacije koja nosi naziv kao i ona koja postavlja upit. Ako takva aplikacija postoji, vraća datum njenog postavljanja na web, ako ne ne vraća ništa.
Na Win strani se obavlja sve ostalo. Metoda zadužena za taj posao, recimo 'AutoUpdate()', provjerava datum, i ako je nevažeći završava aktivnost. Ako je datum veći od datuma aktualne verzije, pristupa obnavljanju verzije.
Zamijenjena verzija programa se sa 'File.Move()', čuva kao 'program(1).exe' i/ili kao 'program(2).exe' s time da je (1) zadnja zamijenjena verzija, a (2) predzadnja. Spuštanjem nove verzije sa Web-a (iz publicdirektory/AutoUpdate), putem 'WebClient.DownloadFile()', smješta je u tekući direktorij (gdje je pokrenuta stara verzija) i time je program zamjenjen a postaje aktualan kod slijedećeg pokretanja.
Sitnica koja život znači.
Antivirusni program će spriječit AutoUpdate, jer ne uspije razlikovat maliciozni upit web-u od onog koji je koristan, zato morate 'otvorit prolaz' za AutoUpdate u zaštitnom mehanizmu antivirusnog programa.
Antivirusnih programa ima previše da bi se svih analiziralo, za primjer ćemo obradit BitDefender. Problem blokade kog BitDefendera ćete riješit tako da isključite iz zaštite direktorij u kojem radi vaš program. Pokrenite BitDefender pa iz menu-a 'Antivirus | Exclusions | + | Excluded by file / folder path' (čekirati). Enter the pat thed must be excluded and click add (browse) 'Direktorij/Vašeg/Programa' Add.
