Einzelnen Beitrag anzeigen

Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: TSocks bind() Typen von Records stimmen nicht überein

  Alt 10. Mai 2015, 09:59
Zitat:
Delphi-Quellcode:
        SocketAddress.sin_family := AF_INET;
        SocketAddress.sin_port := htons(9000);
        SocketAddress.sin_addr.S_addr := inet_addr(PAnsiChar('127.0.0.1'));
in C auf Linux schaut das so aus:

Code:
listenSocket = socket(AF_INET, SOCK_STREAM,0);

socketAddress.sin_family = AF_INET
inet_pton(AF_INET,server_ip,&socketAddress.sin_addr.s_addr);
socketAddress.sin_port = htons(portNumber)
socketAddressSize = sizeOf(socketAddress)

Das Tutorial kennst Du schon?

bind(listenSocket, (stuct sockAddr_in*)&socketAddress, socketAddressSize)
Die Funktion bind() benötigt 3 Parameter.
Es beginnt mit der Identifiaktionsnummer (listenSocket) des Sockets,
der "gebunden"werde soll. Diese Nummer hatte zuvor aufgerufene socket()-Funktion erzeugt.
Dann kommt der Zeiger auf die Datenstruktur in der die Adressinformation gespeichert ist (socketAddress) und schließlich die Länge dieser Datenstruktur)
(Quelle: Martin Pollakowski, Grundkurs Socketprogrammierung mit C unter Linux)
Ähnlich sollte es auch mit Winsock funktionieren.

Das Tutorial kennnst Du schon?

Grüße
Klaus
Klaus

Geändert von Klaus01 (10. Mai 2015 um 10:06 Uhr)
  Mit Zitat antworten Zitat