Hallo Community,
Ich hab für ein Spiel ein Launcher erstellt nun wollte ich da eine Update Funktion einbauen leider hab ich es nicht geschafft und wollte hier nun nach hilfe fragen.
Er soll vom Server aus die Dateien downloaden im Ordner namens XYGameData entpacken und neu downloaden wenn die Versions.txt geändert wurde.Wie gesagt befinden sich die Dateien auf der Website die direkt über den Server gehostet wird über Xampp.Würde mich sehr über vorschläge und Hilfe freuen
Mein Aktueller Code:
Spoiler anzeigen
Ich hab für ein Spiel ein Launcher erstellt nun wollte ich da eine Update Funktion einbauen leider hab ich es nicht geschafft und wollte hier nun nach hilfe fragen.
Er soll vom Server aus die Dateien downloaden im Ordner namens XYGameData entpacken und neu downloaden wenn die Versions.txt geändert wurde.Wie gesagt befinden sich die Dateien auf der Website die direkt über den Server gehostet wird über Xampp.Würde mich sehr über vorschläge und Hilfe freuen
Mein Aktueller Code:
VB.NET-Quellcode
- Imports System.ComponentModel
- Imports System.IO
- Imports System.Net
- Public Class Launcher
- Private WithEvents httpclient As WebClient
- Dim Pfad As String = Nothing
- Private Sub PictureBox1_Click(sender As Object, e As EventArgs) Handles PictureBox1.Click
- Application.Exit()
- End Sub
- Private Sub PictureBox3_Click(sender As Object, e As EventArgs) Handles PictureBox3.Click
- Process.Start("https://www.XY.de")
- End Sub
- Private Sub PictureBox2_Click(sender As Object, e As EventArgs) Handles PictureBox2.Click
- Dim Test As String
- Dim Test2 As String
- Test = "IP=IP"
- Test2 = "Port=Port"
- Dim IP As String = Nothing
- Dim IP2 As String = (Test + IP)
- Dim Port As String = Nothing
- Dim PORT2 As String = (Test2 + Port)
- If Not File.Exists(Application.StartupPath + "/XY.dat") Then
- End If
- Dim path As String = Application.StartupPath + "/config.ini"
- Dim Checked As Boolean = False
- Dim port__1 As Boolean = False
- Dim ip__2 As Boolean = False
- If File.Exists(path) Then
- Dim list As New List(Of String)
- Using r As StreamReader = New StreamReader(path)
- Dim line As String
- line = r.ReadLine
- Do While (Not line Is Nothing)
- list.Add(line)
- Console.WriteLine(line)
- line = r.ReadLine
- Loop
- r.Close()
- End Using
- If list.Contains(PORT2) Then
- port__1 = True
- End If
- If list.Contains(IP2) Then
- ip__2 = True
- End If
- If ip__2 AndAlso port__1 Then
- Checked = True
- Else
- File.Delete(path)
- Using sw As StreamWriter = File.CreateText(path)
- sw.WriteLine("[XY_Network]")
- sw.WriteLine(IP2)
- sw.WriteLine(PORT2)
- Checked = True
- sw.Close()
- End Using
- End If
- Else
- Using sw As StreamWriter = File.CreateText(path)
- sw.WriteLine("[XY_Network]")
- sw.WriteLine(IP2)
- sw.WriteLine(PORT2)
- Checked = True
- sw.Close()
- End Using
- End If
- If Checked Then
- Dim nostalex As String = (Application.StartupPath + "/XY.dat")
- Dim path2 As String = """"
- path2 += XY
- path2 += """"
- Dim argument As String = "/c START "
- argument += """"
- argument += """"
- argument += " "
- argument += path2
- argument += " ClientLoadFromIni"
- Dim p As New Process()
- p.StartInfo = New ProcessStartInfo("cmd.exe", argument)
- p.StartInfo.CreateNoWindow = True
- p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden
- p.Start()
- Application.[Exit]()
- End If
- End
- End Sub
- Private Sub Launcher_MouseDown(sender As Object, e As MouseEventArgs) Handles MyBase.MouseDown
- If (e.Button = Windows.Forms.MouseButtons.Left) Then
- Me.Capture = False
- Me.WndProc(Message.Create(Me.Handle, &HA1, CType(&H2, IntPtr), IntPtr.Zero))
- Else : End If
- End Sub
- End Class