Hallo allerseits
Ich bin grad neu dabei VB zu lernen und habe mich durch ein Chat-Tuturial gearbeitet.
Alles läuft auch super, solange ich es nur auf meinem PC laufen lassen will.
Dafür verwende ich zum Finden der IP
txtIp.Text = Winsock.LocalIP
In dem Tutorial stand wenn ich das ganze nun über das Internet laufen lassen will, so muss ich eine andere IP angeben als die, die duch LocalIP gefunden wird. Dafür muss man einfach nur auf eine von diversen Internetseiten gehen die einem die IP anzeigt und diese dann nutzten.
Wenn ich nun aber die IP die ich dort bekomme eingebe, connecte und eine Nachricht senden will, so bekomm ich folgenden Error:
Laufzeitfehler 40006
Falsche(s) Protokoll oder Verbindungszustand für die angeforderte Transaktion oder Anforderung.
Hier noch die Codes.
Client:
Server:
Ich hab schon einiges gegoogelt, bin aber leider zu keinem Ergebnis gekommen.
Danke im Vorraus.
MFG
Ich bin grad neu dabei VB zu lernen und habe mich durch ein Chat-Tuturial gearbeitet.
Alles läuft auch super, solange ich es nur auf meinem PC laufen lassen will.
Dafür verwende ich zum Finden der IP
txtIp.Text = Winsock.LocalIP
In dem Tutorial stand wenn ich das ganze nun über das Internet laufen lassen will, so muss ich eine andere IP angeben als die, die duch LocalIP gefunden wird. Dafür muss man einfach nur auf eine von diversen Internetseiten gehen die einem die IP anzeigt und diese dann nutzten.
Wenn ich nun aber die IP die ich dort bekomme eingebe, connecte und eine Nachricht senden will, so bekomm ich folgenden Error:
Laufzeitfehler 40006
Falsche(s) Protokoll oder Verbindungszustand für die angeforderte Transaktion oder Anforderung.
Hier noch die Codes.
Client:
Visual Basic-Quellcode
- Option Explicit
- Dim DataArrived As String
- Private Sub cmdConnect_Click()
- Winsock.Connect txtIp.Text, txtPort.Text
- End Sub
- Private Sub cmdSend_Click()
- Winsock.SendData "Client: " & txtMsg.Text
- txtChat.Text = txtChat.Text & "Client: " & txtMsg.Text & vbNewLine
- txtMsg.Text = ""
- End Sub
- Private Sub Form_Load()
- txtIp.Text = Winsock.LocalIP
- End Sub
- Private Sub Winsock_DataArrival(ByVal bytesTotal As Long)
- Winsock.GetData DataArrived, vbString
- txtChat.Text = txtChat.Text & DataArrived & vbNewLine
- End Sub
Server:
Visual Basic-Quellcode
- Option Explicit
- Dim DataArrived As String
- Private Sub cmdSend_Click()
- Winsock.SendData "Server: " & txtMsg.Text
- txtChat.Text = txtChat.Text & "Server: " & txtMsg.Text & vbNewLine
- txtMsg.Text = ""
- End Sub
- Private Sub Form_Load()
- Winsock.Listen
- End Sub
- Private Sub Winsock_ConnectionRequest(ByVal requestID As Long)
- Winsock.Close
- Winsock.Accept requestID
- End Sub
- Private Sub Winsock_DataArrival(ByVal bytesTotal As Long)
- Winsock.GetData DataArrived, vbString
- txtChat.Text = txtChat.Text & DataArrived & vbNewLine
- End Sub
Ich hab schon einiges gegoogelt, bin aber leider zu keinem Ergebnis gekommen.
Danke im Vorraus.
MFG
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Môses“ ()