[VB.Net] Updatesystem

12/07/2012 23:51 Gryio#1
Hallo,

wie ihr schon im Titel gelesen habt, geht es um ein simples Updatesystem, was jeder Anfänger erstellen kann.
Das Updatesystem ließt lediglich aus einer .txt-Datei, von einem FTP Server die Version und vergleicht sie mit der Version von der Anwendung.
Ihr müsst die .txt-Datei auf die neuere Version vom Programm ändern, damit das Updatesystem auch klappt.

Was brauchen wir alles?
- Visual Basic (Ist glaube ich klar)
- FTP Server
- eine Sub(-Domain)

So jetzt zum Code:
Wir erstellen erstmal eine WindowsFormAnwendung (Sollte jeden klar sein, wie das geht) und Lablel, wo ihr die aktuelle Version von eurem Programm schreibt.
Unter "Public Class frmMain" (oder wie ihr es genannt habt) macht ihr 2 Deklarationen:
Code:
Dim Web As New System.Net.WebClient
Damit er auf den Web zugreift.
Code:
Dim version As String = Web.DownloadString("http://www.beispiel.de/version.txt")
Hiermit speichert er die Version von der .txt-Datei aus dem FTP Server.
Unter "Private Sub frmMain_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load" schreibt ihr folgenden Code:
Code:
If lblUpdate.Text = version Then
    Me.Show()
Else
    MsgBox("Neues Update ist verfügbar.")
    Process.Start("http://www.google.de")
    Me.Close()
End If
Code:
If lblUpdate.Text = version Then
    Me.Show()
Grob übersetzt heißt das: Wenn Version vom Programm = Version von der .txt-Datei, dann öffne das Programm.
Code:
Else
    MsgBox("Neues Update ist verfügbar.")
    Process.Start("http://www.google.de")
    Me.Close()
End If
Das heißt: Sonst Nachrichtenbox"Neues Update ist verfügbar.", öffne "http://www.google.de" und Programm schließen.

In dem ersten Link muss man den Link zu der .txt-Datei schreiben und bei dem zweiten den Downloadlink zu der neuen Version.

Ich hoffe, dass ich euch helfen konnte.

Best regards,

Gryio
12/14/2012 14:59 coladose#2
Ich würde das label dynamisch halten und immer mittels:

PHP Code:
My.Application.Info.Version 
gleichzeitig spart man sich so das Eingeben der Version per Hand.
12/14/2012 16:12 Gryio#3
Ja, stimmt. Ich wollte einfach nur ein sehr simples Updatesystem zeigen. :)
12/16/2012 13:28 ѕηαкє#4
kann man es in nem tool einbauen (beispiel skype tool) wo man DIREKT überprüft ob nen update verfügbar ist?
12/16/2012 13:33 Gryio#5
Adde mich mal in Skype. Ich könnte es dir erklären oder auch einbauen.