![]() |
FTP Chat
HI, Ja Ich weis ftp chats sind scheise und total unsicher aber das weis ich schon?:P
Bin auch vb noobi.... code1) PrivateNachricht
Code:
Code2) Form1
Public Class PrivateNachricht
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim Name As String = Me.TextBox1.Text Dim Message As String = Me.TextBox2.Text Dim Messagestring As String = AktuelleZeit() & " - " & Name & ": " & Message My.Computer.FileSystem.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "/user_message/" & Name & "_upload.txt", Messagestring, False) My.Computer.Network.UploadFile(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "/user_message/" & Name & "_upload.txt", "ftp://192.168.1.50/user message/" & Name & ".txt", "test", "fuckyou36", False, 60000) End Sub Private Function AktuelleZeit() Dim AktuelleZeitString As String AktuelleZeitString = Now.Day & "." & Now.Month & "." & Now.Year & "." & Now.Hour & "." & Now.Second Return AktuelleZeitString End Function End Class
Code:
Public Class Form1
Private Property AktuelleZeitString As String Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Dim Chatroom As String = Me.TextBox1.Text Try My.Computer.Network.DownloadFile("ftp://192.168.1.50/" & Chatroom & ".txt", Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\chat-ordner\" & Chatroom & ".txt", "test", "fuckyou36", False, 60000, True) Dim ChatProtokoll As String = My.Computer.FileSystem.ReadAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\chat-ordner\" & Chatroom & ".txt") Me.TextBoxProtokoll.Text = ChatProtokoll Catch End Try End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim Chatroom As String = Me.TextBox1.Text Try Dim Nachricht As String = AktuelleZeit() & " _ " & Me.TextBoxName.Text & ": " & Me.TextBoxNachricht.Text Dim ChatProtokoll As String Try ChatProtokoll = My.Computer.FileSystem.ReadAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\chat-ordner\" & Chatroom & ".txt") Catch ChatProtokoll = "" End Try Dim UploadString As String = ChatProtokoll & vbNewLine & Nachricht My.Computer.FileSystem.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\chat-ordner\" & Chatroom & "_upload.txt", UploadString, False) My.Computer.Network.UploadFile(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "\chat-ordner\" & Chatroom & "_upload.txt", "ftp://192.168.1.50/", "test", "fuckyou36") Catch End Try End Sub Private Function AktuelleZeit() Dim AktuelleZeitString As String AktuelleZeitString = Now.Day & "." & Now.Month & "." & Now.Year & "." & Now.Hour & "." & Now.Second Return AktuelleZeitString End Function Private Sub PictureBox1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox1.Click End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click If Me.Button2.Text = "Beitreten" Then Me.Button2.Text = "Verlassen" Me.Button1.Enabled = True Me.Timer1.Enabled = True Me.TextBox1.Enabled = False Me.Timer2.Enabled = True 'BETRETEN Else Me.Button2.Text = "Betreten" Me.Button1.Enabled = False Me.Timer1.Enabled = False Me.TextBox1.Enabled = True Me.Timer2.Enabled = False 'VERLASSEN End If End Sub Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) PrivateNachricht.Show() End Sub Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick Dim Name As String = Me.TextBoxName.Text My.Computer.Network.DownloadFile("ftp://192.168.1.50/" & Name & ".txt", Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "user_message/" & Name & ".txt", "test", "fuckyou36", False, 60000, True) Dim Message As String = My.Computer.FileSystem.ReadAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "user_message/" & Name & ".txt") Dim TMP() As String = Split(Message, " _ ") Dim AktuelleZeit As String = TMP(0) Dim TMP2() As String = Split(TMP(1), ": ") Dim AbsenderName As String = TMP2(0) Message = Message.Replace(AktuelleZeit & " - " & Name & ": ", "") My.Computer.FileSystem.WriteAllText(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "user_message/" & Name & ".txt", "", False) My.Computer.Network.UploadFile(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) & "user_message/" & Name & ".txt", "ftp://192.168.1.50/user_message/" & Name & ".txt", "test", "fuckyou36", False, 60000) MsgBox("Sie Haben um " & AktuelleZeit & " eine neue Nachricht von " & Name & " erhalten:" & vbNewLine & Message, vbInformation, "Sie haben eine Nachricht erhalten") End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click PrivateNachricht.Show() End Sub End Class So das ist der code Und wen ich dan auf chat beitreten gehe kommt der fehler X( ![]() plz kann mir jemand sagen was ich falsch mache? ?( danke schon mal super super RR team :) mfg ultr4 |
AW: FTP Chat
Hallo und Willkommen in der DP :dp:,
Chat per FTP ist tatsächlich suboptimal, dafür ist das Protokoll ja nicht gedacht. Aber sei es drum: auch wenn es hier um Basic geht, steht es doch da, woran es hapern könnte. Du solltest überprüfen, ob die Liste auch wirklich genug Elemente enthält, bevor Du versuchst, darauf zuzugreifen. [edit] Nachtrag: Du kannst Bilder auch direkt an Deinen Beitrag anhängen, dann bleiben Sie uns auch erhalten, was bei externen Diensten ja nicht gewährleistet ist. [/edit] |
AW: FTP Chat
VB ist da etwas "beschränkt" was Warnungen angeht.
Die Meldung soll wohl folgendes aussagen: Listengröße: 10 min. ListenIndex: 0 max. ListenIndex: 9 |
AW: FTP Chat
Zitat:
ja hm was meinst du mit liste nicht genug elemente enthalten meinste die .txt datei ufn ftp server? und was meint er hiermit^^ Die Meldung soll wohl folgendes aussagen: Listengröße: 10 min. ListenIndex: 0 max. ListenIndex: 9 ?? |
AW: FTP Chat
Du teilst doch mit Split() einen String in seine Bestandteile auf. Dabei kommt dann eine Liste der Teilstrings heraus. Allerdings weißt Du nicht sicher, wie viele das dann sind. Daher knallt es, wenn Du auf einen Listenindex zugreifst, der kleiner als 0 oder größer als Anzahl der Elemente - 1 ist.
|
AW: FTP Chat
Zitat:
|
AW: FTP Chat
Du erwartest ja mindestens 2 Zeilen in TMP. Dann überprüf doch einmal, ob auch 2 Zeilen da sind. IIRC gibt es doch die Length()-Funktion in .NET, die könnte man dazu verwenden.
Code:
Ob das in VB.NET syntaktisch so korrekt ist, weiß ich nicht, ich mache ja mehr Delphi ;)
if TMP.Length() < 2 then 'Fehler
|
AW: FTP Chat
hast du evl teamviwer und kannst mir helfen kann dir meine icq,skype geben wens ok is?:oops:
|
AW: FTP Chat
Was ist so schwer daran zu verstehen?
Du baust die Message im Text zusammen mit " - " und ": " als Platzhalter. Wenn jemand nun " - " oder ": " in seiner Message verwendet, dann Funktioniert Dein Code in Timer2_Tick nicht mehr zuverlässig, weil er mehr oder weniger Elemente erhält und dann ggf. das jeweilige Teilelement keine weiteren Elemente mehr erhält weil es das falsche ist. Benutze lieber ein Zeichen als Trenner, das selten verwendet wird, wie z.B. µ (ist Alt-Gr + M). |
AW: FTP Chat
Weil Listen zu 99% 0-basierend sind.
Und ich denke, in einem VB/VB-Skipt Forum, wird dir mehr geholfen. Wenn ich ehrlich sein soll: VB ist ne Krankheit, ich weiss nur noch nicht wie ansteckend... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz