Einzelnen Beitrag anzeigen

SyntaxXx

Registriert seit: 14. Dez 2008
328 Beiträge
 
Delphi XE4 Architect
 
#1

TSocks bind() Typen von Records stimmen nicht überein

  Alt 9. Mai 2015, 13:38
Ich arbeite mich gerade in die Socketerstellung ein und stoße jetzt auf ein Problem.

Ich bekomme die Meldung: Die Typen der tatsächlichen und formalen Var-Parameter müssen übereinstimmen

Nur verstehe ich diese Meldung nicht, bzw. verstehe nicht, warum diese kommt.
Aus der WinApi benutze ich das Record "SockAddr_in".

SocketAddress: SockAddr_in;
Dann fülle ich die Felder:
Delphi-Quellcode:
SocketAddress.sin_family := AF_INET;
SocketAddress.sin_port := htons(9000);
SocketAddress.sin_addr.S_addr := inet_addr(PAnsiChar('127.0.0.1'));

Dann möchte ich das Socket binden:
SocketError := bind(ListenSocket, SocketAddress, SizeOf(SockAddr_in));
Und genau an dieser Stelle kommt der Fehler.
"SocketAddress" wird markiert.


Warum kommt der Fehler und wie kann ich diesen Beheben?
  Mit Zitat antworten Zitat