Seite 1 von 8 123 ... Letzte
  1. #1
    Avatar von Snees
    Registriert seit
    18.11.2011
    Beiträge
    1.001
    Thanked 590 Times in 319 Posts

    Standard [Tutorial][#1] Bot programmieren [VB.NET]

    Hallo, ich schreibe momentan eine Tutorial-Reihe, wie ihr einen eigenen Knuddels-Bot
    programmieren könnt. Es wird kein besonderer Bot sein, sondern ein ganz einfacher, mit dem ihr
    euch in den Knuddels-Chat einloggen und mit anderen Mitgliedern chatten könnt.
    Anti-Admin, Stayonline usw. wird unser Bot vorerst nicht enthalten.

    Dann fangen wir direkt mal an.

    Unser Bot wird in VB.NET geschrieben.
    Dazu brauchen wir zuerst einmal Visual Studio. (Download Visual Basic 2010)
    KNLib
    Das aktuelle, manipulierte Applet.

    Ihr öffnet Visual Studio und klickt auf Datei -> Neues Projekt.
    Jetzt öffnet sich ein Fenster mit verschiedenen Möglichkeiten einer Anwendung.

    Wir wählen "Windows Forms-Anwendung", da wir weder eine Konsolenanwedung, noch eine
    Klasse oder eine Anwendung mit Effekten erstellen wollen.

    Nun seht ihr eine Form ("Form1"), diese ist allerdings noch leer.
    Links befindet sich die Toolbox, wir ziehen nun folgende Elemente aus der Toolbox auf unsere
    Form1:
    -2 Button (Login, Logout)
    -4 Textboxen (Nickname, Passwort, Channel, an Chat senden)
    -1 Combobox (Auswahl des Chatsystems)
    -1 RichTextBox (Chatverlauf)
    -1 ListView (Userliste)

    Die Elemente könnt ihr anordnen, wie ihr wollt, es bleibt euch überlassen.

    Nun beschriften wir unsere Elemente.
    1. Button: Login
    2. Button: Logout
    1. Textbox: Nickname (Text-Eigenschaft)
    2. Textbox: Passwort (in den Eigenschaften noch zusätzlich "UseSystemPasswordChar" auf true ändern
    3. Textbox: Channel
    4. Textbox: Text an Chat senden
    1. Combobox: im Eigenschaften-Fenster bei "Items" auf "Auflistung" klicken und dann untereinander
    folgende Werte eintragen:
    DE
    AT
    CH
    Die Richtextbox und das ListView beschriften wir nicht.
    Nun klicken wir noch auf unsere Form und ändern den Titel unserer Anwedung (ebenfalls mit der Text-Eigenschaft).
    Ihr könnt den Titel beliebig ändern, beispielsweise: "Mein erster Bot" etc.

    Die Oberfläche ist nun fertig, natürlich kann man noch viele andere Änderungen vornehmen,
    aber in diesem Tutorial soll es zuerst darum gehen einen Bot zu coden.

    Wir sehen nun also die fertige Oberfläche und drücken nun F7,
    damit gelangen wir in den Bereich, in dem wir unseren Code schreiben.
    Bis jetzt stehen dort es zwei Zeilen, aber das werden wir ganz schnell ändern.

    Zuerst müssen wir die KNLib importieren, dazu klicken wir auf Projekt -> Verweis hinzufügen,
    dann auf "Durchsuchen" und in den Ordner navigieren, in dem die KNLib bei euch liegt.
    Wir wählen die KNLib aus und klicken auf OK.
    Nun klickt ihr auf Datei -> Alles speichern und geht in den Debug Ordner, das Applet was sich dort befindet löscht ihr und fügt dort das aktuelle Applet ein.

    Nun müssen wir die KNLib noch mittels des Codes importieren, dazu schreiben wir über
    PHP-Code:
    Public Class Form1 
    PHP-Code:
    Imports KNLib 
    Anschließend schreiben wir unter
    PHP-Code:
    Public Class Form1 
    diesen Code:
    PHP-Code:
    Dim applet As Applet 
    und
    PHP-Code:
    Dim WithEvents client As KSClient 
    Wir gehen nun wieder zu unserer Oberfläche und machen einen Doppelklick auf die Form,
    so gelangen wir wieder in den Code-Bereich und es wurde die Methode Form1_Load hinzugefügt
    Dort schreiben wir nun folgenden Code:
    PHP-Code:
    Control.CheckForIllegalCrossThreadCalls False
    applet 
    = New Applet
    client 
    = New KSClient(applet
    Nun gehen wir wieder zu der Oberfläche und machen einen Doppelklick auf den Login-Button
    Nun fügen wir folgenden Code hinzu:
    PHP-Code:
    Dim CSystem As New ChatSystem
    Select 
    Case ComboBox1.Text
                
    Case "DE"
                    
    CSystem ChatSystem.DE
                
    Case "AT"
                    
    CSystem ChatSystem.AT
                
    Case "CH"
                    
    CSystem ChatSystem.CH
                End Select
            client
    .Connect(CSystem)
            
    client.Login(TextBox1.TextTextBox2.TextTextBox3.Text

    Nun gehen wir wieder zu unserer Oberfläche und machen einen Doppelklick auf den Logout-Button
    und fügen folgenden Code hinzu:
    PHP-Code:
    client.Disconnect() 
    Wir gehen wieder zu unserer Oberfläche, klicken auf die Form und gehen im Ereignisse-Fenster auf
    auf "FormClosed" und machen einen Doppelklick darauf, nun gelangen wir wieder in den Code-Bereich
    und es ist die Methode Form1_FormClosed erschienen, dort fügen wir folgenden Code ein:
    PHP-Code:
    System.Environment.Exit(0
    Das Grundgerüst steht nun, wir können uns einloggen und ausloggen, aber was fehlt noch?
    Richtig, der Chatverlauf, die Userliste und der Text, den wir an den Chat senden wollen.

    Wir wollen zuerst einmal die Userliste mit leben füllen, dazu fügen wir folgenden Code hinzu:
    PHP-Code:
    Private Sub client_OnUserListReceive(ByVal sender As ObjectByVal UserList As System.Collections.Generic.List(Of KNLib.User)) Handles client.OnUserListReceive
            ListView1
    .Items.Clear()
            For 
    Each User As KNLib.User In UserList
                ListView1
    .Items.Add(User.Name)
            
    Next
        End Sub
        
        
    Private Sub client_OnChannelJoin(ByVal sender As ObjectByVal User As KNLib.UserHandles client.OnChannelJoin
                 ListView1
    .Items.Add(User.Name)
        
    End Sub

        
    Private Sub client_OnChannelLeave(ByVal sender As ObjectByVal User As KNLib.UserHandles client.OnChannelLeave
            ListView1
    .FindItemWithText(User.Name).Remove()
        
    End Sub 

    Jetzt wollen wir noch den Chatverlauf mit Leben füllen, dazu verwenden wir folgenden Code:
    PHP-Code:
    Private Sub client_OnPublicMessage(ByVal sender As ObjectByVal Nick As StringByVal Message As StringHandles client.OnPublicMessage
            RichTextBox1
    .AppendText(Nick ": " Message vbLf)
        
    End Sub
        
         
    Private Sub client_OnPrivateMessage(ByVal sender As ObjectByVal fromNick As StringByVal toNick As StringByVal Message As StringHandles client.OnPrivateMessage
            RichTextBox1
    .AppendText(fromNick " an " toNick ": " Message vbLf)
    End Sub 
    Wenn wir gepingt werden wollen wir das natürlich auch wissen, also fügen wir wieder folgenden Code hinzu:
    PHP-Code:
    Private Sub client_OnPing(ByVal sender As ObjectByVal Nick As StringByVal Key As StringHandles client.OnPing
            MessageBox
    .Show("Ping erhalten von " Nick)
        
    End Sub 
    Und wenn wir ein Popup empfangen wollen wir das auch sehen, also:
    PHP-Code:
    Private Sub client_OnPopup(ByVal sender As ObjectByVal Message As StringByVal token() As StringHandles client.OnPopup
            MessageBox
    .Show(Message"Popup")
        
    End Sub 
    Nun haben wir den Chatverlauf und die Userlist, es fehlt also noch... Text an den Chat senden
    Dazu klicken wir auf unsere 4. Textbox, die wir verwenden um den Text einzugeben,
    wir gehen in das Ereignis-Fenster und machen einen Doppelklick auf "KeyDown".
    Dann erscheint eine Methode "TextBox4_KeyDown, dort fügen wir folgenden Code ein:
    PHP-Code:
    If client.IsConnected True Then
                
    If e.KeyCode Keys.Enter Then
                    e
    .SuppressKeyPress True
                    client
    .SendMessage(TextBox4.Text)
                    
    TextBox4.Clear()
                
    End If
            Else
                
    MessageBox.Show("Sind wir eingeloggt?")
            
    End If 
    Somit sind wir fertig und können unseren Bot benutzen, ich hoffe euch hat das Tutorial gefallen,
    es war mein erstes Text-Tutorial, also seid lieb
    Wenn ich demnächst nochmal Zeit finde werde ich ein weiteres Tutorial schreiben,
    bei Fragen bitte im Thread posten und ich versuche dann so gut wie möglich zu antworten!

    /e Ich habe den Code noch nicht erklärt, werde ich aber noch editieren!
    Geändert von DeKaDeNz (04.02.2012 um 00:12 Uhr) Grund: Syntaxhighlight eingefügt

  2. The Following 14 Users Say Thank You to Snees For This Useful Post:

    Comu (21.11.2011), Cracker (09.12.2011), Dbzfreak1337 (21.11.2011), ESC (21.11.2011), Gangstersheep (04.02.2012), getsha (05.09.2018), icekillfx (17.07.2012), Impact (27.03.2012), Kolle1991 (17.07.2012), Maffin (08.06.2012), marvijjn (21.11.2011), Roxithro (21.11.2011), Stardunk (28.03.2012), x BoooM x (04.12.2011)

  3. #2
    Avatar von Roxithro
    Registriert seit
    19.11.2011
    Beiträge
    1.126
    Thanked 1.180 Times in 863 Posts

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    Hey,
    ich habe das Tutorial erstmal nur überflogen und ich finde es sehr gut beschrieben.
    Was ich aber bevorzugen würde, wäre ein V-TUT. In Video-Tutorials kann man einfach besser verstehen was genau gemeint ist.

    edit:// Ich werde es morgen mal ausprobieren.

  4. The Following User Says Thank You to Roxithro For This Useful Post:

    St0nY (21.11.2011)

  5. #3
    Avatar von Snees
    Registriert seit
    18.11.2011
    Beiträge
    1.001
    Thanked 590 Times in 319 Posts

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    Zitat Zitat von Marlboro Beitrag anzeigen
    Hey,
    ich habe das Tutorial erstmal nur überflogen und ich finde es sehr gut beschrieben.
    Was ich aber bevorzugen würde, wäre ein V-TUT. In Video-Tutorials kann man einfach besser verstehen was genau gemeint ist.
    Die Idee hatte ich auch schon, das Problem daran ist, dass ich eine sehr schlechte Internetleitung habe und das Hochladen auf Youtube ein Problem wäre :S ich werde aber die Tage mal eins aufnehmen und es bei einem Kumpel hochladen

  6. #4
    Avatar von Shane
    Registriert seit
    18.11.2011
    Beiträge
    969
    Thanked 399 Times in 286 Posts

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    Hi,
    ich habe mir das Tutorial mal im ganzen angesehen, und finde es in einer Programmierungssprache etwas schwer zu verstehen 'Für Anfänger'.

    Vielleicht machst du mal ein Tutorial wie Wave es gemacht hat ?

    Er hat es beschrieben und zusätzlich mit Screens versehen, so finde ich es sehr übersichtlich.

  7. #5
    Avatar von Snees
    Registriert seit
    18.11.2011
    Beiträge
    1.001
    Thanked 590 Times in 319 Posts

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    Die User von heute, "Bilder, wir brauchen Bilder!" Ich werde es morgen überarbeiten + ein Video Tutorial aufnehmen!

  8. #6
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    Bisschen an der Strukturierung arbeiten, ansonsten gutes und ausführliches Tutorial. Bin gespannt auf weitere von dir und werde diese auch mal auf p1rates posten, sofern du kein Problem damit hast.

  9. #7
    Avatar von Snees
    Registriert seit
    18.11.2011
    Beiträge
    1.001
    Thanked 590 Times in 319 Posts

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    Zitat Zitat von Scantraxx Beitrag anzeigen
    Bisschen an der Strukturierung arbeiten, ansonsten gutes und ausführliches Tutorial. Bin gespannt auf weitere von dir und werde diese auch mal auf p1rates posten, sofern du kein Problem damit hast.
    Bin damit einverstanden, wie gesagt ich überarbeite das Tutorial morgen noch, d.h. Bilder + Erklärung der Codeabschnitte.

  10. #8

    Registriert seit
    18.11.2011
    Beiträge
    193
    Thanked 66 Times in 60 Posts

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    HeyJo.
    Erstmal danke für das sehr gute TuT!
    Habe es ebend ausprobiert und es geht alles Wunderbar.

    Hier mein Ergebniss:

    (Fals einer denkt ich Laber bloß)

    Ich möchte weitere TuT's von dir.
    Geändert von Cube!X (21.11.2011 um 19:16 Uhr) Grund: Bild eingefügt
    PUT YOUR FUCKING HANDS UP!

  11. #9
    Avatar von Diebspiel
    Registriert seit
    18.11.2011
    Beiträge
    311
    Thanked 191 Times in 102 Posts

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    Credits fehlen. Kein Respekt oder so? Oder mal wieder der Copy & Paste King?

    - Teile des oben benutzen Sourcecodes basieren auf dem KNLib VB.NET Sample von Diebspiel -

  12. The Following 2 Users Say Thank You to Diebspiel For This Useful Post:

    Klaus Bukkake (20.06.2013)

  13. #10
    Avatar von patlux
    Registriert seit
    26.10.2011
    Beiträge
    1.195
    Thanked 1.596 Times in 725 Posts
    Blog Entries
    2

    Standard AW: [Tutorial][#1] Bot programmieren [VB.NET]

    Zitat Zitat von Diebspiel Beitrag anzeigen
    Credits fehlen. Kein Respekt oder so? Oder mal wieder der Copy & Paste King?

    - Teile des oben benutzen Sourcecodes basieren auf dem KNLib VB.NET Sample von Diebspiel -
    Nope, sorry. Aber das geht definitiv zu weit. So ein Rotz hab ich in der gesamten K-Szene nicht gelesen. Obwohl dass ja nicht das erste mal ist dass du für Kleinigkeiten Credits sehen willst.

    Hinter den Zeilen steckt nichts besonderes. Kein Algo, keine Logik. Wofür willst du Credits haben? Das sind ganz normale Code-Stücke die jeder mal nutzt.

    Die Credits kann er wieder entfernen. Die Beiträge lass ich mal so stehen. Das nächste mal wird sowas von mir direkt gelöscht.

    Ich kann dich gut leiden Diebspiel. Aber das ist einfach scheiße was du da von dir gibst. Du hast das auch überhaupt nicht nötig. Dein E-Penis in der Szene ist schon groß genug. Sogar größer als Meiner. Wieso willst du also überall dein Namen drunter stehen haben >.>

  14. The Following 8 Users Say Thank You to patlux For This Useful Post:

    DnL (04.02.2012), ESC (23.11.2011), GXC1 (21.11.2011), Kosi (21.11.2011), Patrick Bateman (17.12.2011), rVs14 (16.02.2012), Snees (21.11.2011)

Seite 1 von 8 123 ... Letzte

Ähnliche Themen

  1. [FAQ] Wie lerne ich Programmieren?
    Von DMW007 im Forum Hochsprachen
    Antworten: 7
    Letzter Beitrag: 07.02.2014, 00:23
  2. Ebook Sammlung zum Thema Programmieren
    Von pat2487 im Forum eBooks
    Antworten: 0
    Letzter Beitrag: 17.12.2013, 19:39
  3. C# Objektorientiert Programmieren
    Von Snees im Forum .Net
    Antworten: 0
    Letzter Beitrag: 05.03.2013, 23:28
  4. Programmieren
    Von Marcel1992 im Forum Knuddels Programmierung
    Antworten: 14
    Letzter Beitrag: 10.08.2011, 15:01
  5. Poker Calculator Programmieren
    Von Paradox im Forum Knuddels Programmierung
    Antworten: 6
    Letzter Beitrag: 16.05.2011, 17:08
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.