UpdateLib v1

    • Beta

    Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Cycrus.

      Hallo ,

      da ich mich neuerdings mit DLL´s beschäftige hab ich für mich eine kleine UpdateLib geschrieben.
      Damit ich nicht immer alles wieder neu in meinen Programmen einbauen muss.

      Aufrufe :

      .Update() Prüft auf Updates und läd es dann runter falls eines vorhanden ist wenn nicht dann läd er halt nicht runter
      .Downloadstatus as String = der Downloadstatus enthält beim Download die infos wieviel empfangen / wieviel total

      Mehr brauch man nicht O_O

      Hier ein beispiel aufruf im moment noch sehr schlecht gelöst ^^ Wenn jemand weiß wie es besser geht bescheid sagen :

      VB.NET-Quellcode

      1. Public Class Form1
      2. Dim status As String
      3. Dim AktuelleVersion As Integer = 1
      4. Dim UpDateLib As New UpToDateLib.UpToDateLib(AktuelleVersion, "http://localhost/updatelib")
      5. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      6. BackgroundWorker1.WorkerSupportsCancellation = True
      7. End Sub
      8. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
      9. BackgroundWorker1.RunWorkerAsync()
      10. End Sub
      11. Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
      12. If BackgroundWorker1.CancellationPending = True Then
      13. BackgroundWorker1.CancelAsync()
      14. End If
      15. UpDateLib.Update()
      16. status = UpDateLib.Downloadstatus
      17. Do
      18. If status = "Fertig" Or status = "Kein Update Vorhanden" Then
      19. Exit Do
      20. Else
      21. status = UpDateLib.Downloadstatus
      22. End If
      23. Loop
      24. End Sub
      25. End Class


      Beim aufruf der DLL bzw beim erstellen der Instanz als ersten Parameter die Aktuelle Programm version und als 2 Parameter den Link zum Webspacepfad z.b. eure-domain.de/update
      ihr könnt mit oder ohne Slash am ende das wird geprüft.

      In diesem Ordner muss eine txt vorhanden sein die wie folgt aussieht :

      Zeile1 : NeueProgrammVersion
      Zeile2 : NameDerExeDieRunterGeladenWerdenSoll.exe

      Ja das wars auch schon ist meine 1. DLL Datei wo ich versuche ein Event abzufangen^^

      .Net Fw : 3.0
      IDE : VS 2010 Ultimate

      Bitte Feedback und so =)
      Dateien
      • UpToDateLib.rar

        (5,38 kB, 104 mal heruntergeladen, zuletzt: )
      Grüße , xChRoNiKx

      Nützliche Links:
      Visual Studio Empfohlene Einstellungen | Try-Catch heißes Eisen

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Cycrus“ ()

      Also in einem anderen Thread auf ein Objekt eiens anderen zuzugreifen ist übelst schlecht programmiert.
      Dafür gibts extra das Worker.ReportProgress-Event.

      Also meines Wissens freezen solche Loops auch den Thread, es sei denn dieses Update() hat nen eigenen Thread ...

      Allgemein, sowas gehört in die Lib und nicht an den User gebunden. Update sollte schon einen neuen Thread haben und da alles machen, noch einen zum Prüfen ist umständlich und würde mir Grund genug geben ein besseres, kostenloses Prgoramm zu verwenden ;)