Minecraft Launcher erstellen

11/25/2012 11:28 Regen.#1
Hey,

ich habe vor einen Launcher zu erstellen der user mit Client Updates versorgt.

Ich schreibe den Patcher/Launcher in VB.NET. Ich habe schon einiges im Internet darüber gelesen wie ich das mit dem Login hinbekomme. Allerdings waren alle Methoden fehlerhaft. Wie bekomme ich das hin, dass sich nur Minecraft Premium nutzer einloggen können?


Mit freundlichen Grüßen

Regen.
11/25/2012 11:31 cakeflavor#2
Ich bin da auch schon zu oft dran gescheitert...

1. Zeig mal deinen bisherigen Code. Ohne sichtbare Eigenarbeit wird dir hier keiner Support geben.

2. HttpWebRequests auf minecraft.net? Schon mal probiert? Damit hatte ich das schlussendlich auch gelöst. Loggt sich auf minecraft.net ein, geht auf [Only registered and activated users can see links. Click Here To Register...] und überprüft, ob im Quelltext "This account is already premium" gefunden wird = Erfolgreich eingeloggt. Das ist nur der Ansatz, wie du überprüfst, ob der Account Premium ist. Das Einloggen an sich, da geb ich erstmal kein Support, bis ich deinen bisherigen Code gesehen hab
11/25/2012 11:44 Regen.#3
Code:
    Private Function Login(ByVal username As String, ByVal password As String, ByVal version As Integer) As Integer
        Dim strHTML As String
        Dim URL As String
        URL = "https://login.minecraft.net/?user=" & username & "&password=" & password & "&version=" & version
        Try
            Dim request As WebRequest = WebRequest.Create(URL)
            Dim response As WebResponse = request.GetResponse()
            Dim dataStream As Stream = response.GetResponseStream()
            Dim reader As New StreamReader(dataStream)
            strHTML = reader.ReadToEnd()
            Dim lowerhtml As String = strHTML.ToLower
            Dim loweruser As String = username.ToLower
            If lowerhtml.Contains("bad login") Then
                'bad login
                Return 1
            ElseIf lowerhtml.Contains(loweruser) And lowerhtml.Contains("deprecated") Then
                'password is correct
                Return 2
            ElseIf lowerhtml.Contains("too many failed logins") Then
                'too many logins
                Return 3
            Else
                'returned unexpected value
                Return 4
            End If
        Catch e As Exception
            Return 4
        End Try
    End Function
Das ist der Ausschnitt für den Login. Ich bin nicht so ein könner in VB teile davon habe ich aus dem Internet. Webrequest, Webresponse, Stream und streamreader sind nicht definiert.
11/25/2012 18:36 Howaner#4
Add mich mal Skype.
Name: howaner
Dann kann ich dir vielleicht helfen.