Port nicht doppelt ansprechbar?

kuhlmaehn

Erfahrenes Mitglied
Hi!
Eigentlich war mir klar, dass es nicht funktionieren darf aber ich verstehe nicht wieso es nicht funktioniert.

Ich hab gerade mal mit Visual Basic getestet ob es geht, dass sich Client A mit Server B verbindet und sich dann ein Client C mit dem selben Server B über den gleichen Port verbindet. Ich dachte, dass dann Client C vielleicht "reinfuschen" kann. Ist aber nicht so.

Eigentlich hatte ich gedacht, dass es möglich sein könnte etwas auf eine Ip auf den Port von z.B. ICQ zu schicken was dann ebenfalls im Chatfenster erscheint.

Warum ist es nicht möglich, dass zwei Clienten etwas auf den gleichen Server auf den gleichen Port senden?

danke
kuhlmaehn
 
Ich schätze du verwendest WinSock.
Das geht schon, du musst allerdings mehrere WinSock Controls einrichten.
Wenn ein WSControl die Verbindung aufgebaut hat, kann das andere auf demselben Port auf Anfragen warten.

Hier ein Beispiel:

Code:
  'Benötigt werden:
  ' WS		Winsock Control
  ' WS.index = 0
  ' WL		Winsock Control
  ' WL.index = 0
  ' cmdSend   Commandbutton
  ' label	Label
  ' label.index = 0
  
  Dim nummer As Integer
  Const port = 10000
  
  Private Sub cmdSend_Click()
  
  	WS(nummer).Connect "127.0.0.1", port
  	nummer = nummer + 1
  	Load WS(nummer)
  	Load WL(nummer)
  	Load Label(nummer)
  	
  	Label(nummer).Top = Label(nummer - 1).Top + Label(nummer - 1).Height
  
  End Sub
  
  Private Sub Form_Load()
  	
  	WL(0).RemotePort = port
  	WL(0).Listen
  
  End Sub
  
  Private Sub WL_ConnectionRequest(Index As Integer, ByVal requestID As Long)
  	
  	WL(Index).Close
  	WL(Index).Accept requestID
  	Label(Index).Visible = True
  	Label(Index).Caption = "Winsock Control " & Index & " verbunden!"
  	WL(Index + 1).Listen
  
  End Sub
 

Neue Beiträge

Zurück