In Diesem Kleinem Tutorial möchte ich euch zeigen,wie ihr für eure Applications einen Simplen Updater machen Könnt.
Viel Spaß beim nachmachen!
©Mr.Black.Data
-Dieses Tutorial Darf weitergegeben werden Solange meine Credits Darin Enthalten sind!
1. FTP PROGRAMM: Könnt ihr euch aussuchen also zb (Filezilla,FlashFxP) Könnt ihr alle Müheloß bei Google Finden
2.FTP SERVER: Gibt es auch wieder ziemlich viele verschiedene (Ohost,Funpic,Bplaced) auch wieder bei Google zu Finden
3.Datei die ihr Benötigt Damit der Updater überhaupt was macht!
4.Coding!
=====
Nun Fangen wir an.
1.FTP PROGRAMM: Sobald Ihr euch ein FTP Frogramm gedownloadet habt, könnt ihr zu schritt 2 weitergehen!
2.FTP SERVER: Erstellt euch einen FTP Server und geht dan zu schritt 3 Weiter.
3.Erstellt eine neue Text Datei und fügt dort Folgendes ein:
Code:
neu
warum das erfahrt ihr bei schritt 4
4.Coding.
Startet euer Visualbasic und Erstellt eine neue Windows Forms Anwendung.
Dort Addet ihr:
2xWebbrowser Macht bei beiden,in den Eigenschaften bei "Visible" auf False
Das Bedeutet, das man die Beiden Webbrowser nicht sieht wenn man das Programm Debuggt!
1xButton.
Den Bennent ihr um wie ihr lustig seit.
So nun Kommen wir zu der oben erstellten datei.
Uploadet diese in euer FTP Verzeichnis, und dannach geht ihr per internet auf euer FTP Verzeichnis also zb
Code:
euerupdater.ohost.de
Fügt diesen bei dem Ersten Webbrowser in den eigenschaften bei der Spalte "URL" ein.
Dan Uploadet ihr noch eine belibiege datei die gedownloadet werden soll, sobald neue Updates Verfügbar sind. (Bitte Uploadet es am besten per RAR Datei)
Dan geht ihr wieder in euer Verzeichnis und Kopiert den link der RAR datei.
==
CODING STARTS
==
Doppelklick auf euren Button
dort schreibt ihr dan folgendes Rein
Code:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If WebBrowser1.DocumentText = "alt" Then
MsgBox("Euer TEXT Wenn Updates VORHANDEN SIND")
WebBrowser2.Navigate("Den Link der Rar Datei auf eurem FTP SERVer")
Else
MsgBox("Es Sind keine neuen Updates Vorhanden")
End If
End Sub
End Class
Das mit der HTML Datei ist eure sache, es kann auch sein wenn
"Peter" drinnensteht das keine neuen updates da sind aber wenn
"Lustig" drinnensteht das welche da sind, das ist eigentlich eure Sache.
So ich Hoffe ich Konnte euch Helfen. Und Wenn ihr wollt, das ich euch zeige wie ihr diesen updater Ganz einfach in eure HAUPT Application einfügt dan lasst es mich unten in den Kommentaren wissen.
Obwohl ich Glaube das es eigentlich jeder Wissen sollte.
Mfg
Mr.Black.Data
Thanks währe nett
=======================
Guter Updater von DoctorPixl
=======================
Guten Abend/Guten Morgen Elitepvpers Community
In diesem Tutorial möchte ich euch zeigen wie man einen recht guten Updater für eure Anwendungen Programmiert.
Wir brauchen:
1x Form
1x Label
1x ProgressBar
1xFTP Server (square7,ohost,bplaced,kilu. etc...
(Wichtig: Gestaltet die Form am besten klein, da wir den updater in eure Anwendungen einbinden müssen)
So
Diesen Code fügt ihr in die Form ein, aber ich bitte euch nicht einfach Copy&Paste zu betreiben.
Versucht den Code zu verstehen
Code:
Imports System.Net
Public Class Form1
Private WithEvents httpclient As WebClient
Dim pfad As String = Nothing
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Hide()
ShowDialog:
SaveFileDialog1.ShowDialog()
If SaveFileDialog1.FileName = Nothing Then
GoTo ShowDialog
End If
pfad = SaveFileDialog1.FileName
Try
httpclient = New WebClient
Dim URL As String = "" 'Hier kommt der Link zur Datei die immer geupdated werden soll
Me.Show()
Application.DoEvents()
httpclient.DownloadFileAsync(New Uri(url), pfad)
Application.DoEvents()
Catch ex As Exception
MsgBox("Es ist folgender Fehler aufgetreten:" & vbNewLine & ex.ToString, MsgBoxStyle.Critical, "Es ist ein Fehler aufgetreten")
End Try
End Sub
Private Sub httpclient_DownloadFileCompleted(ByVal sender As Object, ByVal e As System.ComponentModel.AsyncCompletedEventArgs) Handles httpclient.DownloadFileCompleted
MsgBox("") 'Die nachricht die angezeigt werden soll,wenn das update fertig ist
Process.Start(pfad)
Me.Close()
End Sub
Private Sub httpclient_DownloadProgressChanged(ByVal sender As Object, ByVal e As System.Net.DownloadProgressChangedEventArgs) Handles httpclient.DownloadProgressChanged
Me.ProgressBar1.Value = e.ProgressPercentage
Dim totalbytes As Double = e.TotalBytesToReceive
Dim bytes As Double = e.BytesReceived
Me.Label1.Text = bytes & " KB von " & totalbytes & "KB"
End Sub
End Class
Nun brauchen wir noch den Code für eure Anwendung damit der Updater überhaupt sinn hat.
Dieser code kommt bei eurer Anwendung in die Form die als erstes gestartet wird(man kann es auch variabel machen, aber ich finde es so besser xP)
wie oben bereits gesagt kein reines copy&paste machen, sondern code verstehen
Code:
Dim VersionChecker As New System.Net.WebClient ' Erstellt eine neue Instanz von Webclient
Dim ServerVersion As String = VersionChecker.DownloadString("euerftp\version.ini") 'Hier wird der Inhalt der Datei runtergeladen (zB. 1.1)
Dim MeineVersion As String = Me.Label_v.Text ' Hier wird der Variable MeineVersion der Text von dem Label zugewiesen zB. 1.0
If Not ServerVersion = MeineVersion Then
MsgBox("Es ist eine Neuere Version von .. verfügbar,es wir nun Automatisch geupdatet", MsgBoxStyle.Information) 'text der kommt falls neue version vorhanden
Shell(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\updater.exe")
End
Und ein Label in der die Aktuelle Version steht,also zb 1.0 das is das besagte Label_v.text
Wie ihr dem Code eventuell bereits entlesen habt läuft das ganze über eine .ini die auf eurem ftp ist.
Falls in der ini 1.1 steht wird der updater automatisch updaten.
Falls in der ini 1.0 steht passiert nichts,also müsst ihr immer die V_Nummer in eurer Anwendung anpassen..
Okay, wir haben es fast geschafft, jetzt müssen wir nurnoch den updater in eure Anwendung einbinden
Das machen wir einfach so
Oben im Tooltip
Projekt/.... Eigentschaften/Ressourcen/Ressource Hinzufügen/Vorhandene Datei hinzufügen/updater auswählen.
Okay nun ist euer Updater startklar.
Ich hoffe ich konnte euch Helfen
Mfg:
-DoctorPixl






) mit reineditieren würdest, so finden die Leut die bessere Variante des Patchers leichter und ich brauch nicht extra nochmal n Thread aufmachen
