Ftp Chat - Ändern In Eine Andere Verbindungsart

  • VB.NET

Es gibt 10 Antworten in diesem Thema. Der letzte Beitrag () ist von KAXTJ.

    Ftp Chat - Ändern In Eine Andere Verbindungsart

    Hi,

    Da ja mein anderes Thread so eben gelöscht wurde OBWOHL ICH BEREITS GESCHRIEBEN HABE DAS ICH BEREIT BIN DAS GANZE ZU ÄNDERN (ja ich bin leicht sauer aber gut ok kann man nix machen) nun noch mal die frage kann ich das:

    VB.NET-Quellcode

    1. ftp4.Text = "t"
    2. wc.Credentials = New Net.NetworkCredential(benutzername, passwort)
    3. textbox100.Text = wc.DownloadString(ftp4.Text)


    Möglichst leicht in eine andere Verbindungsart ändern ohne alles komplett ändern zu müssen?
    Nein, da musst du mehr oder weniger alles ändern, zumindest wen du es richtig machen möchtest...

    In Großbuchstaben zu schreiben ist trotzdem nicht die richtige Herangehensweise, denn das wird als schreien interpretiert:

    http://de.wikipedia.org/wiki/Netiquette#Chat schrieb:


    Ebenfalls nicht gerne gesehen ist in Großbuchstaben zu schreiben, da dies als Schreien verstanden wird.
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    ok was für eine Verbindungsart kommt am Nächsten dran? Und ist vor allem am sichersten? (brauche nur den namen)

    (sorry wegen den großbuchstaben aber wahr echt leicht sauer, weil ich ja wie gesagt bereits in dem anderen Thread diese frage hier gepostet bzw. geantwortet habe.)
    ok, danke schon für eure hilfe mal schauen wie viel ich vom Grund Programm stehen lasse oder ob ich das Projekt wieder auf eis lege (habe ich schon mal für ein jahr gemacht, damals wahr ich noch lang nicht so weit wie heute, und habe damals knall hart versucht alleüber sql zu machen was aber (mittlerweile ist mir auch klar warum) Überhaupt nicht ging. Jetzt mit ftp wahr ich echt richtig weit, und ich habe die frage ob und wie ich es sicher hin bekomme immer weiter nach hinten geschoben. nun ja, man siht ja wo zu es gefürhrt hat... habe mich bis her noch für keine verbindungsart entschieden, habe mir aber mal beispiele aus dem netz gezogen um zu sehen wie der code aufgebaut ist.

    Schönen Abend wünsche ich euch
    KAXTJ
    Übrigens: Dein Thread wurde gelöscht, um die Codeausschnitte des alten FTP-Chats zu entsorgen. Das verhindert, dass andere Nutzer Teile des geposteten Codes verwenden.

    Hier im Forum gibts den MultiServer (irgendwo bei den Tutorials) - der ist sogar schon für einen Chat vorbereitet, wenn ich mich richtig erinnere.
    Wurde schon gepostet.

    Falls es dich interessiert: FTP-Server gehackt
    Gruß
    hal2000
    Übrigens: Dein Thread wurde gelöscht, um die Codeausschnitte des alten FTP-Chats zu entsorgen. Das verhindert, dass andere Nutzer Teile des geposteten Codes verwenden.


    Alles klar, wahr in dem Moment halt echt iritiert und sauer. Entschuldigung. :)

    Nun nach einigen beispielen die ich mir heraus gesucht habe, habe ich das, was schätze ich für den anfang am besten ist genommen und einfach mal angefangen alles aufzuschlüsseln und versucht um zu schreiben doch leider ist mir irgend wo ein Fehler unterlaufen und auch wen ihr es nicht gerne seht das jemand den ganzen code schickt, muss ich es einfach machen weil ich echt keinen Ausweg mehr finde. ich bekomme zwar keine fehler, und er verbindet sich auch mit dem server. aber leider passiert nix wen ich eine msg schicke... also er zeigt mir zwar die msg an aber er sendet sie nicht an den server. und empfengt auch nix vom server:

    Code vom chat (von mir überarbeitet):

    VB.NET-Quellcode

    1. Imports System.Net.Sockets
    2. Public Class Form1 'Form1
    3. Dim TCPC As New TcpClient 'TCPC = einen neuen TCP Client
    4. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'Form1.load
    5. Me.BackgroundWorker1.WorkerReportsProgress = True 'immer auf true
    6. RichTextBox39.Text = RichTextBox39.Text & vbNewLine & "Verbinden mit server..." 'verbindung mir server wirt hergestelt wirt in RichTextBox39.Text geschrieben
    7. Try
    8. RichTextBox39.Text = RichTextBox39.Text & vbNewLine & "Verbindung mit server..." 'verbindung mir server wirt hergestelt wirt in RichTextBox39.Text geschrieben
    9. TCPC.BeginConnect("192.168.2.2", 4000, AddressOf OnConnect, Nothing) 'verbinung wirt zum server hergestellt und onConnect (1:) wirt gestartet
    10. Catch ex As Exception ' Wen keine verbinung aufgebaut werden könnte
    11. RichTextBox39.Text = RichTextBox39.Text & vbNewLine & "Server Konnte nicht gefunden werden!" 'Server konnte nicht gefunden werden wirt in RichTextBox39.Text geschrieben
    12. End Try
    13. End Sub
    14. '(1:)
    15. Private Sub OnConnect(ByVal AR As IAsyncResult) 'onConect
    16. Try
    17. TCPC.EndConnect(AR) 'TCPclient beendet die verbindung
    18. Me.BackgroundWorker1.RunWorkerAsync("mit Server Verbunden")
    19. Catch ex As Exception
    20. Me.BackgroundWorker1.RunWorkerAsync("Konntackt fehlgeschlagen: " & ex.Message)
    21. End Try
    22. End Sub
    23. Private Sub RichTextBox38_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles RichTextBox38.KeyDown 'In RichTextBox38 enter drückern
    24. If e.KeyCode = Keys.Enter And RichTextBox38.Text <> "" Then 'steht etwas in richtextbox38 und man drückt enter soll:
    25. Dim Writer As New IO.StreamWriter(TCPC.GetStream) 'tcp sich mit verbinden mit stream
    26. Writer.Write(RichTextBox38.Text) 'dentext aus der RichTextBox38 reinschreiben
    27. Writer.Flush() 'das ganze fluschen
    28. Me.BackgroundWorker1.RunWorkerAsync(RichTextBox38.Text)
    29. Me.RichTextBox38.Text = "" 'RichTextBox38 soll lehr werden
    30. End If
    31. End Sub
    32. Private Sub Button42_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button42.Click
    33. Dim Writer As New IO.StreamWriter(TCPC.GetStream) 'tcp sich mit verbinden mit stream
    34. Writer.Write(RichTextBox38.Text) 'dentext aus der RichTextBox38 reinschreiben
    35. Writer.Flush() 'das ganze fluschen
    36. Me.BackgroundWorker1.RunWorkerAsync(RichTextBox38.Text)
    37. Me.RichTextBox38.Text = "" 'RichTextBox38 soll lehr werden
    38. End Sub
    39. #Region " Background Worker "
    40. Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, _
    41. ByVal e As System.ComponentModel.DoWorkEventArgs) _
    42. Handles BackgroundWorker1.DoWork
    43. Me.BackgroundWorker1.ReportProgress(100, e.Argument)
    44. End Sub
    45. Private Sub BackgroundWorker1_ProgressChanged(ByVal sender As Object, _
    46. ByVal e As System.ComponentModel.ProgressChangedEventArgs) _
    47. Handles BackgroundWorker1.ProgressChanged
    48. ListBox1.Items.Add(e.UserState)
    49. End Sub
    50. #End Region
    51. End Class


    Code vom Server (das ist noch der gleiche, also nich überarbeitet und nicht verendert):

    VB.NET-Quellcode

    1. Imports System.Text
    2. Imports System.Net.Sockets
    3. Public Class Server
    4. Dim Data As Integer
    5. Dim Message As String
    6. Dim TCPL As TcpListener
    7. Dim TCPC As New TcpClient
    8. Dim BufferSize(TCPC.ReceiveBufferSize - 1) As Byte
    9. Private Sub Server_Load(ByVal sender As System.Object, _
    10. ByVal e As System.EventArgs) Handles MyBase.Load
    11. Me.BackgroundWorker1.WorkerReportsProgress = True
    12. Try
    13. TCPL = New TcpListener(Net.IPAddress.Any, 4000)
    14. TCPL.Start()
    15. ListBox1.Items.Add("Waiting for connection...")
    16. TCPL.BeginAcceptTcpClient(AddressOf OnConnect, Nothing)
    17. Catch ex As Exception
    18. ListBox1.Items.Add("Error: " & ex.Message)
    19. End Try
    20. End Sub
    21. Private Sub OnConnect(ByVal AR As IAsyncResult)
    22. TCPC = TCPL.EndAcceptTcpClient(AR)
    23. Me.BackgroundWorker1.RunWorkerAsync("Connection with client has " & _
    24. "been established!")
    25. TCPC.GetStream.BeginRead(BufferSize, 0, BufferSize.Length, AddressOf OnRead, _
    26. Nothing)
    27. End Sub
    28. Private Sub OnRead(ByVal AR As IAsyncResult)
    29. Data = TCPC.GetStream.EndRead(AR)
    30. Message = Encoding.ASCII.GetString(BufferSize, 0, Data)
    31. Me.BackgroundWorker1.RunWorkerAsync(Message)
    32. TCPC.GetStream.BeginRead(BufferSize, 0, BufferSize.Length, AddressOf OnRead, _
    33. Nothing)
    34. End Sub
    35. #Region " Background Worker "
    36. Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, _
    37. ByVal e As System.ComponentModel.DoWorkEventArgs) _
    38. Handles BackgroundWorker1.DoWork
    39. Me.BackgroundWorker1.ReportProgress(100, e.Argument)
    40. End Sub
    41. Private Sub BackgroundWorker1_ProgressChanged(ByVal sender As Object, _
    42. ByVal e As System.ComponentModel.ProgressChangedEventArgs) _
    43. Handles BackgroundWorker1.ProgressChanged
    44. ListBox1.Items.Add(e.UserState)
    45. End Sub
    46. #End Region
    47. End Class


    P.s. Dieser Code stand als Tutorial im netz. und ich benutzte ihn nur um zu üben!

    Danke im Voraus für eure Hilfe.

    OK, Hab des Problem grad selber gefunden... wahr ein denk Fehler :) hatte dem server immer verbindung mit dem alten chat offen und da der sever nur einen benutzer aceptiert hat hat der neue natürlich nicht funktioniert. sorry!

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „KAXTJ“ ()

    ok also der Code ist abenteuerlich und das erkenn ich jetzt noch(und ich meine nicht die Uhrzeit :P)

    Da würde ich mich fragen, woher um himmels willen hast du den Client oder den Server? Du verwendest einen BackgroundWorker nur dazu um einen Text eines Controls zu setzen?

    Ich bitte dich guck dir den Code hier ausm Forum an, der bereits gepostet wurde:
    [VB 2010] Ftp Chat - Ändern In Eine Andere Verbindungsart
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    Ich habe mir ganz anfang dieses tutorial angeschaut und auch versucht an zu passen jedoch ohne erfolg. aber ich werde es jetzt (wo ich ein wenig mehr von der materie verstehe) noch mal probieren. danke für den hinweiß!