Mám nasledujúci kód na stiahnutie súborov pre aktualizáciu programu WebCl je WEBClient Adressa je cesta k súboru na serveri http://www......... Subor je názov súboru
If IO.Directory.Exists(Application.StartupPath & "\Aktualizacie") = False Then
IO.Directory.CreateDirectory(Application.StartupPath & "\Aktualizacie")
End If
Try
WebCl.DownloadFileAsync(New Uri(Adressa), Application.StartupPath & "\Aktualizacie\" & Subor)
Catch ex As Exception
MessageBox.Show("Nepodarilo sa načítať súbor ! " & ControlChars.NewLine & ex.ToString, "Správa", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
Počas sťahovania sa aktualizuje progressbar a ukazaje percentuálne priebeh sťahovania súboru. Všetko funguje, súbor sa stiahne ale niekedy pred začiatkom pohybu progressbaru sa zobrazí Form bez ovládacích prvkov pozadie sa vykreslí bielou farbou. trvá to niekedy aj 4-5 sekúnd a program vyzerá ako keby zamrzol. Po obnove okna sa zobrazia všetky prvky ale pozadie Formu sa neobnoví na pôvodnú farbu zostáva stále biele čo pôsobí dosť rušivo. V helpe je k tejtu funkcii uvedené : "This method does not block the calling thread.", čiže predpokladal som že form nebude mať problémy so svojím prekreslovaním alebo zamrzaním. Nevie mi niekto pokadiť ako by sa to dalo odstrániť ?
|