Dark Ranger
Erfahrenes Mitglied
1
Der Code vom Client:
Der Code vom Server:
_____________________________________________________________________
2
Was bedeutet der Fehler? Was ist flasch am Code? Es liegt bestimmt am Server oder?
Da sagt der Computer liegt das Problem!
_____________________________________________________________________
3
Inzwischen bin ich ein wenig weiter:
Erklärungen:
Server
frmLogin:
-Man muss Name und Passwort eingeben, es muss beides stimmen, damit man weiterkommt (funktioniert)
frmEinstellungen:
-Hier muss man den Port angegeben, denn man verwenden möchte (funktioniert)
frmChat:
-In einer Multiline Textbox werden alle Texte angezeigt, die die User schreiben (funktioniert)
-Wenn ein User etwas schreibt, dann leitet der Server es an alle anderen User weiter (funktioniert)
-Alle User werden in einer Textbox angezeigt (Wie soll ich anfangen? Wie mache ich das?
Client
frmLogin
-Man muss einen Namen eingeben, der zum chatten verwendet wird (funktioniert)
frmEinstellungen
-Man muss port und IP des Servers eingeben (funktioniert)
frmChat
-In einer Multilinetextbox wird der Chat durchgeführt (Wenn man Text an den Server sendet, dann bekommt ein bestimmter Client alle Texte doppelt)
-Man kann in eine Texbox einen Text eingeben und senden (funktioniert)
- User sollen in einer Textbox angezeigt werden (funktioniert nicht, siehe Server)
Der Code vom Client:
Code:
Option Explicit
Private Sub cmdBeenden_Click()
Unload frmLogin
Unload frmEinstellungen
Unload Me
End Sub
Private Sub cmdSend_Click()
Winsock.SendData frmLogin.txtName.Text & ": " & txtEingabe.Text & vbCrLf
End Sub
Private Sub Form_Load()
Winsock.RemoteHost = frmEinstellungen.txtIP.Text
Winsock.RemotePort = frmEinstellungen.txtPort.Text
Winsock.Connect
End Sub
Private Sub Winsock_DataArrival(ByVal bytesTotal As Long)
Dim sData As String
Winsock.GetData sData
txtChat.Text = txtChat.Text & sData
txtChat.SelLength = Len(txtChat.Text)
End Sub
Der Code vom Server:
Code:
Option Explicit
Dim intmax As Integer
Private Sub cmdBeenden_Click()
Unload frmLogin
Unload frmEinstellungen
Unload Me
End Sub
Private Sub Form_Load()
intmax = 0
Winsock(0).LocalPort = frmEinstellungen.txtPort.Text
Winsock(0).Listen
End Sub
Private Sub Winsock_ConnectionRequest(Index As Integer, ByVal requestID As Long)
If Index = 0 Then
intmax = intmax + 1
Load Winsock(intmax)
Winsock(intmax).LocalPort = frmEinstellungen.txtPort.Text
Winsock(intmax).Accept requestID
Winsock(intmax).SendData "Verbunden" & " " & intmax & vbCrLf
End If
End Sub
Private Sub Winsock_DataArrival(Index As Integer, ByVal bytesTotal As Long)
Dim data As String
Dim i As Integer
Winsock(Index).GetData data
For i = 0 To intmax
Winsock(i).SendData data
Next i
txtChat.Text = txtChat.Text & data
txtChat.SelLength = Len(txtChat.Text)
End Sub
_____________________________________________________________________
2
Wrong protocol or connection state for the requested transaction or request
Was bedeutet der Fehler? Was ist flasch am Code? Es liegt bestimmt am Server oder?
Code:
Winsock(i).Senddata data
_____________________________________________________________________
3
Inzwischen bin ich ein wenig weiter:
Erklärungen:
Server
frmLogin:
-Man muss Name und Passwort eingeben, es muss beides stimmen, damit man weiterkommt (funktioniert)
frmEinstellungen:
-Hier muss man den Port angegeben, denn man verwenden möchte (funktioniert)
frmChat:
-In einer Multiline Textbox werden alle Texte angezeigt, die die User schreiben (funktioniert)
-Wenn ein User etwas schreibt, dann leitet der Server es an alle anderen User weiter (funktioniert)
-Alle User werden in einer Textbox angezeigt (Wie soll ich anfangen? Wie mache ich das?
Client
frmLogin
-Man muss einen Namen eingeben, der zum chatten verwendet wird (funktioniert)
frmEinstellungen
-Man muss port und IP des Servers eingeben (funktioniert)
frmChat
-In einer Multilinetextbox wird der Chat durchgeführt (Wenn man Text an den Server sendet, dann bekommt ein bestimmter Client alle Texte doppelt)
-Man kann in eine Texbox einen Text eingeben und senden (funktioniert)
- User sollen in einer Textbox angezeigt werden (funktioniert nicht, siehe Server)