Frage o0 Update in ein Tool einbauen?

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Werbung zur Unterstützung des Forums ( Bitte AddBlocker deaktivieren )

    • [FONT="Comic Sans MS"][COLOR="DeepSkyBlue"][SIZE="2"]Is eig ganz einfach.
      Als erstes brauchste ne Versionsnummer, mach die am besten gleich in Source rein.
      Dann bauste dir meinetwegen ne MySQL Tabelle wo die Info drin is oder, was ich eher sagen würde, ne datei mit ner Struktur die du dir ausdenkst.
      Beim start vom Prog die Datei laden, nachschaun ob die Version höher bzw anders is als die alte (evtl vll dafür sorgen dass es auch wirklich ne neue version is indem du die versionsnummer im tool splittest usw, wie auch immer)
      Sollte was neues vorliegen, so brauchste nur hinzugehn und dem nutzer zu melden, es wäre ein Update da.
      wenn ers bejaht, beende das aktuelle programm und starte nen updater, damit du auch deine richtigen programmdateien dann updaten kannst (einfach runterladen und überschreiben)

      So sollte deine Updatefunktion gehn, wies im Code aussieht hab ich selber keine ahnung, da ich sowas in C#/VB bzw generell in .NEt noch nich gemacht hab und mir dazu die Methoden nicht bekannt sind.
      Daher kann ich dir leider keinen VB Code geben.[/SIZE][/COLOR][/FONT]
    • [FONT="Trebuchet MS"][COLOR="LemonChiffon"][SIZE="2"]

      PHP-Quellcode

      1. Dim AktuelleVersionsNummer As String = "1"
      2. Dim wclient As New Net.WebClient
      3. Dim VersionsNummer As String = wclient.DownloadString("http://www.meinWebspace.de/version.txt")
      4. If VersionsNummer <> AktuelleVersionsNummer Then
      5. Update()
      6. End If


      Ist ein bisschen schlampig mit dem String kann man auch als integer definieren.[/SIZE][/COLOR][/FONT]
    • naja ist gut aber warum so schwer
      mach doch die Versions nummer deklaration gleich so

      man mimmt einfach
      ein StatusStrip1 dazu haut man einfach
      ToolStripStatusLabel1

      code Kann wie folgt aussehen

      PHP-Quellcode

      1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
      2. ToolStripStatusLabel1.Text = "App Version: " & Application.ProductVersion
      3. Checkversion()
      4. End Sub
      bild zum Code


      so um die version zuvergleichen

      PHP-Quellcode

      1. Private Sub Checkversion()
      2. Dim httpclient As New WebClient
      3. Dim newversion As String = httpclient.DownloadString("link zu deiner versions.txt")
      4. If ToolStripStatusLabel1.Text > newversion Then
      5. 'Verbinung zum Private Sub des Updaters
      6. MsgBox("Neu version")
      7. End If
      8. End Sub
      bild zum 2 code


      ich denke das sollte sich alles von Allein Klären :)
      die Versions nummer kannste ändern unter

      deine App -> eintellung->Anwendung->Assemblyinfomation

      deine Version text sollte so ca aus sehen
      1.0.3.0

      und schon hast du denn vergleich fertig ^^

      Fast vergessen
      über form1
      Imports System.Net
    • der updater muss als extra exe geschrieben werden die z.b. in die resseurcen des programmes kommt
      dann kommt in die update version dieser code:

      Quellcode

      1. If My.Application.Info.Version.ToString = New Net.WebClient().DownloadString("Adresse zu einer trextdatei in der die vedrsion steht z.b. http://lol.de/version.txt die den text 1.0.0.0 enthält") Then
      2. If MessageBox.Show("Neue version verfügbar Download?", "Neue Version", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1) = Windows.Forms.DialogResult.Yes Then
      3. Shell(My.Application.Info.DirectoryPath + "\Name des update programmes " + Application.ExecutablePath + " Download Link der neuen datei", AppWinStyle.NormalFocus)
      4. End If
      5. End If
      dann in das update programm

      Quellcode

      1. Module Module1
      2. Friend WithEvents web As New Net.WebClient
      3. Sub Main()
      4. IO.File.Delete(My.Application.CommandLineArgs(0))
      5. web.DownloadFileAsync(New Uri(My.Application.CommandLineArgs(1)), My.Application.CommandLineArgs(0))
      6. Shell(My.Application.CommandLineArgs(0))
      7. End Sub
      8. Sub Progress(ByVal sender As Object, ByVal e As Net.DownloadProgressChangedEventArgs) Handles web.DownloadProgressChanged
      9. Console.WriteLine("Download: " + e.ProgressPercentage.ToString + "%")
      10. End Sub
      11. End Module
      Alles anzeigen
    • [FONT="Trebuchet MS"][COLOR="LemonChiffon"][SIZE="2"]Finde euren Code sehr umständlich.
      Deshalb hab ich auch mal was geschrieben:

      Hauptprogramm.exe (Komm in das Form_Load Event)

      PHP-Quellcode

      1. Dim wc As New WebClient
      2. Dim actualversion As String = wc.DownloadData("Http://meinWebspace.de/update.txt")
      3. If actualversion <> "1.0" Then
      4. Process.Start("Update.exe")
      5. End If
      6. MessageBox.show("Es wird ein Update ausgeführt.")


      Update.exe (Consolen-Anwendung)

      PHP-Quellcode

      1. File.Delete("Hauptprogramm.exe")
      2. Console.WriteLine("Die Alte Version wurde gelöscht!")
      3. My.Computer.Network.DownloadFile("http://meinWebspace.de/Hauptprogramm.exe", "Hauptprogramm.exe", "Benutzername", "Passwort")
      4. Console.WriteLine("Erfolgreich Geupdatet!")
      5. Console.WriteLIne("Starte neue Version beim Druck von Enter!")
      6. Console.Readkey()
      7. Process.Start("Hauptprogramm.exe")


      Wenn man jetzt eine neue Versions seines Programmes rausbringen möchte schreibt man in die Zeile
      anstatt "1.0" -> "2.0".
      Auch die Versionsnummer in der txt.-Datei muss angepasst werden.

      Hab das ganze ausm Kopf geschrieben,
      könnten Fehler drin sein.[/SIZE][/COLOR][/FONT]
    • naja fixed
      du Änderst 1 zahl und die TXT datei

      Ich änder auch nur laut meinem Code oben auch nur 1 zahel und die txt datei
      also denke ich nehmen sie die beiden versionen ob deins oder meins nicht al zuviel

      einer kommt mit deiner version klar
      andere mit meiner

      Und mit meiner version komme ich perfekt klar
      denn sehe ich wenigsten selber bei welcher version ich stehe

      deine version ist gut
      edit ich habe ja nur die Version vergleichung gepostet
      da ich meinen Updater noch nicht fertig habe damit er perfekt arbeitet

      mit Progressbar und son zeug alles
    • nun ja bei meiner version hat man den meisten frei raum zum ändern
      das update programm kann wo ganz anders liegen und auch der download link kann sich ändern aber mein code lässt sich durch ein paar zeilen anpassen
      ihr geht davon aus es gibt nur einen download link und der updater liegt im gleichen ordner
      man kann den updater auch zuerst von der wabspace ins tmp verzeichnis downloaden und dann ausführen
      bei meiner version kein problem

      [B]SChwarzeSeeIe"http://www.mmorpg-core.com/fo…/schwarzeseeie-6815.html"
      [/B]deiner ist einfach zu umständlich mit dem strip

      Fixed
      deiner ist zu fest gelegt auf den dll und er updatet automatisch selbst wein keine inet verbindung da ist löscht er die datei und wenn man kein update will weil einfach kein inet da ist dann hat man kein programm mehr
      ausserdem nerft downloadfile bei mehr als5 mb files weil einfach das programm einfirert
    • ichbinniemand;187578 schrieb:

      nun ja bei meiner version hat man den meisten frei raum zum ändern
      das update programm kann wo ganz anders liegen und auch der download link kann sich ändern aber mein code lässt sich durch ein paar zeilen anpassen
      ihr geht davon aus es gibt nur einen download link und der updater liegt im gleichen ordner
      man kann den updater auch zuerst von der wabspace ins tmp verzeichnis downloaden und dann ausführen
      bei meiner version kein problem

      [B]SChwarzeSeeIe"http://www.mmorpg-core.com/fo…/schwarzeseeie-6815.html"
      [/B]deiner ist einfach zu umständlich mit dem strip

      Fixed
      deiner ist zu fest gelegt auf den dll und er updatet automatisch selbst wein keine inet verbindung da ist löscht er die datei und wenn man kein update will weil einfach kein inet da ist dann hat man kein programm mehr
      ausserdem nerft downloadfile bei mehr als5 mb files weil einfach das programm einfirert



      bei dir kommt ein fehler help <.<


      Hier:
      Module Module1

      pls help <.<