VB Update Funktion
lima-city → Forum → Programmiersprachen → Basic
adresse
beispiel
code
computer
dialog
form
format
ftp
funktion
lade
programm
sender
server
show
string
system
textdatei
update
url
verbindung
-
Ich habe bereits eine Update funktion geschrieben, aber sie funktiniert leider nicht kann mir bitte jemand meinen Fehler zeigen.
Hier der Code
If My.Computer.Network.Ping("Meine Website") Then
My.Computer.Network.DownloadFile("Mein Ftp Server", "C//Version.txt")
Dim Version As String = Replace(My.Computer.FileSystem.ReadAllText("C:/Version.txt"), vbCrLf, "")
Dim OldVersion As String = Replace(Application.StartupPath & "/Version.txt", vbCrLf, "")
My.Computer.FileSystem.DeleteFile("C://Version.txt")
If MessageBox.Show("Es wurde ein Update gefunden" & vbCrLf & "Downloaden", "Update gefunden", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
My.Computer.FileSystem.DeleteFile(Application.StartupPath & "/Version.txt")
My.Computer.Network.DownloadFile("mein Ftp Server", Application.StartupPath & "/Version.txt")
MsgBox("Update erfolgreich", MsgBoxStyle.Information, "Ready")
Me.Close()
Else
Me.Close()
End If
Else : MsgBox("Es gab ein Problem mit der Verbindung!" & vbCrLf & "Die Verbindung mit dem Server ist fehlgeschlagen")
End If
End Sub -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Was funktioniert denn nicht?
Eine Debug Ausgabe wäre sehr hilfreich!
Welches Format hat denn dein ftp-server-string bei
My.Computer.Network.DownloadFile("Mein Ftp Server", "C//Version.txt")
?
Beitrag zuletzt geändert: 3.5.2010 22:55:00 von biester-online -
biester-online schrieb:
Welches Format hat denn dein ftp-server-string bei
My.Computer.Network.DownloadFile("Mein Ftp Server", "C//Version.txt")
?
zum beispiel:
...DownloadFile("download.dein-name.lima-city.de/datei", ...)
vergiss aber nicht, benutzernamen und passwort anzugeben, da du sonst keinen zugriff hast.
siehe http://www.lima-city.de/thread/ordner-updaten.
da hab ich down- und upload funktionen beschrieben...
Beitrag zuletzt geändert: 4.5.2010 21:11:29 von rb-online -
Für einen Auto Updater würde ich ein Dialog mit einem Webbrowser bei dem Visible = False ist nehmen und der Code wäre dieser hier:
Public Class Dialog1
Dim a As String = "Den Namen des Programms"
Dim b As Form = Die Form nach dem Dialog
Private Sub OK_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK_Button.Click
Timer1.Start()
WebBrowser1.Navigate("Die FTP Adresse" + a + ".exe")
Me.ShowInTaskbar = True
End Sub
Private Sub Cancel_Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel_Button.Click
Me.Hide()
Me.ShowInTaskbar = True
b.Show()
End Sub
Private Sub Dialog1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim web As New WebClient
Dim update As String = web.DownloadString("Die FTP Adresse" + a + ".txt")
If update.Contains(Application.ProductVersion) Then
MsgBox("Neues Update gefunden - New Update avaible")
Me.Show()
Else
MsgBox("Kein neues Update gefunden - No new Update avaible")
Me.Hide()
b.Show()
Me.ShowInTaskbar = True
End If
End Sub
End Class
Dann gehst du auf deine Programmeigenschaften und auf Assemblyinformationen, setzt dort dann die Werte 1.0.0.0 und 1.0.0.0 auf die Produktversionsnummer und schreibst in eine Textdatei mit dem Namen des späteren Programms die Produktvesrionsnummer, lädst beides auf den FTP-Server hoch und machst Dialog1 zum Startfenster. Wenn jetzt eine neue Version dseines Programms rauskommt, schreib in die Textdatei zum Beispiel 1.0.0.1 und lade diese Textdatei mit dem NAmen der alten Textdatei auf den FTP-Server und lade die neue Programmversion hoch. Wichtig:Die Sachen müssen immer die selben Namen haben wie du im Code geschrieben hast (Variable a).
Hoffe ich konnte helfen.
LG Wolvan -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage