Welche Ports muss ich bei CLientSocket/Serversocker wählen?



  • Ich bin nun soweit das ich mich zu verschiedenen Rechnern verbinden kann (z.b. www.lidl.de).

    Nun will ich aber das Programm testen und gleichzeitig client und server auf meinem PC sein, nur welchen Port muss ich da nehmen? Hab jetzt als Port80 genommen, nur wenn ich zu meinem eigenen PC eine verbindung aufbauen will kommt keine Verbindung zustande.

    Ich muss dazu sagen das ich mich kaum mit netzwerkprogrammierung auskenne 😃



  • Den Port kannst du frei aussuchen, wichtig ist halt, dass Client und Server denselben Port benutzen.
    Insgesamt gibt es 65535 Ports, dabei sind die ersten 1024 sogenannte "well known ports", die von Standard-Protokollen benutzt werden, wie z.B. HTTP auf Port 80 oder FTP auf Port 21.
    Du solltest du also nach Möglichkeit einen Port > 1024 benutzen, um Konflikte mit anderen Protokollen und Anwendungen zu vermeiden.



  • Ok danke schonmal!
    Ich hab mir erstmal nen Portscanner runtergeladen und greife jetzt auf einen freien Port zu, d.h. es geht.

    Das nächste Problem ist folgendes: Ich arbeite mit dem Code das Chatprogramms, hier stürzt er immer bei folgender Zeile ab:

    if (IsServer)
      {
       Statuslabel->Caption ="IsServer ist true";
        ServerSocket->Socket/*->Connections[0]*/->SendText(Feld->Text);
        }
      else
          ClientSocket->Socket->SendText(Feld->Text);
    

    Das Stück was den Fehler verursacht habe ich auskommentiert, die Meldung ist:

    **
    EListError: Der Index der Liste überschreitet das Maximum(0)!;**

    Danke für die Hilfe! 🙂



  • Offenbar gibt es keine Verbindung, demzufolge ist das Connections[]-Array leer (Maximum = Null). Du versuchst, auf das erste (Index 0), aber nicht vorhandene Item des Arrays zuzugreifen, das schlägt natürlich fehl.

    Das hat aber nichts mit dem Thema des Threads zu tun. Bitte die Faustregel beachten: ein Thema pro Thread, ein Thread pro Thema.
    Und immer zuerst die BCB-Hilfe, die FAQ und die Suchfunktion hier benutzen.


Anmelden zum Antworten