aktualizace   zodpovězená otázka

VB.NET

Zdravim :)

Pokud mám vytvořenej program 1.exe

a bude ho používat širší veřejnost potřebuju aby se aktualizoval.

Např:. mám starý program (1.exe) a budu ho potřebovat nahradit novým (2.exe).

Tak jak mám napsat kód aby mi 1.exe z internetové stránky ((www.bla.cz/program3.exe)) stáhnul ten nový 2.exe program a nahradil ten starý - aniž by uživatel cokoliv potvrzoval nebo by mu něco nabýhalo

//v 1.exe bude podmýnka jestliže přesáhne určitý čas např 15.11.2009 začne aktualizace

Předem děkuji za všechny nápady

předem děkuji za vvšechny rady

nahlásit spamnahlásit spam 0 / 2 odpovědětodpovědět

Lehké:

 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  
  If Date.Now = #15/11/2009# Then
   My.Computer.Network.DownloadFile("http://bla.cz/2.exe", "C:\Program Files\Prog\New\2.exe")
   Process.Start("C:\Program Files\Prog\New\2.exe")
   End
  End If
End Sub

a do programu 2.exe:

 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  
  If IO.File.Exist("..\1.exe") Then
   IO.File.Delete("..\1.exe")
   IO.File.Copy(".\2.exe", "..\1.exe")
  End If
End Sub

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

A pokud bude mít uživatel ten program 1.exe pozměněný na třeba aa.exe tak se nnový program stáhne a přepíše se na 1.exe ale ten starý tam pořá bude

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Uživatel asi nebude hrabat do program files kvůli tomu aby změnil název. Navíc by si to musel předělávat v zástupcích, kdyby program otevíral nějaký soubor a už. by to měl ve windowsu nastavené, wokna by to nenašly ... Prostě, nevím proč by to měl měnit.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

no třeba by si program stáhnul na plochu a ten program by se jmenoval program1.exe a uživatel by jsi ho přejmenoval na klkulačka1.exe a tím by byl změněn

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Já si představuju pod pojmem "pro širší veřejnost" to že program je v program files a má alespoň 1 ex. soubor.

A já beru do své úvahy své pochopení. Nechci být ostrý, ale moc jste to neopsal. Tedy, popsal jste to co je rycle pochopitelné, ale to jak a kam (nebo prostě "úvahy") jste nepopsal.

PS: Už vidím to hodnocení: -4

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Pro širší veřejnost bylo mysleno pro přibližně 50 uživatelů.

A já měl problém s tim aby se program sám přes net sktualizoval ale to jsem vyřešil s vaší pomocí.

a v tom programu je script kterej stáhne program smaže původní a přejmenuje se na jméno toho původního.

např:.

My.Computer.Network.DownloadFile("www.bla.cz\2.exe", "C:\2.exe")
        
If My.Computer.FileSystem.FileExists("C:\1.exe")Then
My.Computer.FileSystem.DeleteFile("C:\1.exe")
                       My.Computer.FileSystem.CopyFile("C:\2.exe", "C:\1.exe")
            My.Computer.FileSystem.DeleteFile("C:\2.exe")
        End If
        Process.Start("C:\1.exe")

ale můj problém nastáva v tom že někdo bude mít ten starý program 1.exe přejmenovaný na kalkulačka.exe takže script stáhne nový program ale ten starý přemenovaný tam zůstane...

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

(50 uživatelů na 50 různých PC) a protože každý uživatel může mít např:. jiné jméno zvazku tak jsem zvolil cest vždy tu ze který byl program spuštěn

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Nevím, ale může program vůbec smazat sám sebe ? Nejsem si tedy zrovna zcela úplně jist.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ale on nesmaže sám sebe.

Ten prog. 2.exe smaže 1.exe.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Základní pravidlo při programování zní: "Buď líný a nepiš to, co už napsané je a lépe."

Než si psát vlastní systém aktualizací, což není úplně triviální (v diskusi nastíněné řešení není vůbec ideální), co takhle použít něco už hotového?

Ve Visual Studiu stačí v menu najít položku Publish, dáte tomu cestu na FTP na tom webu a ono vám to tam vytvoří stránku, ze které tu aplikaci můžete nainstalovat. Když uděláte novou verzi, dáte Publish znovu a na web se nahraje aktualizace. Nainstalovaná aplikace se před spuštěním podívá, jestli pro ni nejsou aktualizace, a pokud ano, stáhne si je. Pro takto jednoduché použití je to ideální řešení.

nahlásit spamnahlásit spam 4 / 4 odpovědětodpovědět

Můžu se k tomuto tématu zeptat na jeden problémek. Po problému s diakritikou na webu což jsem pořešil názvem bez ní mám teď problém takový že když si pomocí vygenerovaného setup.exe nainstaluju aplikaci a ze startu si dam ikonu na plochu tak po následný aktualizaci mi ikona z plochy zmizí. Dá se nějak přinutit aby mi tam ikona zůstala nebo si jí musím vždy programově znovu vytvořit?

Předem dík

Martin

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Cau,

dokazem zmenit pri okne na updaty napriklad napis tlacidla skip na preskocit? teda lokalizovat tie hlasky?

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback