AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Winsock , send/recv, wie?
Thema durchsuchen
Ansicht
Themen-Optionen

Winsock , send/recv, wie?

Ein Thema von xxl1 · begonnen am 19. Jun 2006 · letzter Beitrag vom 20. Apr 2007
Antwort Antwort
xxl1

Registriert seit: 21. Apr 2006
88 Beiträge
 
FreePascal / Lazarus
 
#1

Re: Winsock , send/recv, wie?

  Alt 20. Jun 2006, 03:49
ok danke für den tipp!
das mit der send() funktion scheint bei mir schon vorher nach ausprobieren geklappt zu haben. Leider werden die Daten scheinbar vom "Server" nicht empfangen.
Daher poste ich nun einmal den abstrahierten quellcode für den "server" in der reihenfolge wie ich die funktionen aufrufe:
Delphi-Quellcode:
function TNet.WinSock_startup;
  var wsa: TWSAData;
begin
  WSAStartup(MAKEWORD(2, 0), wsa);
end;
  
function TNet.Winsock_sockTCP;
begin
  S := socket (AF_INET , SOCK_STREAM , 0); // S : tSocket;
end;

function TNet.Winsock_setoptTCP;
begin
  s_addr.sin_family :=AF_INET; // s_addr : sockaddr_in;
  s_addr.sin_port := htons(10000);
  s_addr.sin_addr.s_addr := htonl(INADDR_ANY);
  s_addr.sin_zero:='0';
end;

function TNet.WinSock_bindTCP;
begin
  bind ( S , s_addr , sizeof(s_addr));
end;

function TNet.Winsock_listenTCP;
begin
  listen(S , SOMAXCONN);
end;

function TNet.Winsock_acceptTCP;
begin
  S_accepting:= accept(S, nil, nil); // S_accepting : tSocket; {Socket der verbindungen akzeptiert durch accept() }
end;

function TNet.Winsock_reciveTCP;
begin
  result:=recv(S_accepting, buffer, strlen(buffer),0); // buffer : PChar;
end;
Dies sind also meine Funktionsaufrufe. Natürlich bleibt der "server" bei der funktion accept hängen solange keine verbindung duch den "client" mit connect() erstellt wurde. Danch führt der "client" die bereit erwähnte send() funktion durch und der "server" soll dies "nurnoch" mit dem der oben geposteten funtion recv() auslesen. Leider geschiet dies nicht.

Hoffe jemand erkennt die Fehler in meinem Quellcode und kann mir helfen.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz