Wie verwenden Sie Netzwerk-Sockets in Pascal? Sockets in Pascal
Antwort
Hier ist ein Beispiel aus http://www.bastisoft.de/programmierung/pascal/pasinet.html
program daytime;
{ Simple client program }
uses
sockets, inetaux, myerror;
const
RemotePort : Word = 13;
var
Sock : LongInt;
sAddr : TInetSockAddr;
sin, sout : Text;
Line : String;
begin
if ParamCount = 0 then GenError('Supply IP address as parameter.');
with sAddr do
begin
Family := af_inet;
Port := htons(RemotePort);
Addr := StrToAddr(ParamStr(1));
if Addr = 0 then GenError('Not a valid IP address.');
end;
Sock := Socket(af_inet, sock_stream, 0);
if Sock = -1 then SockError('Socket: ');
if not Connect(Sock, sAddr, sizeof(sAddr)) then SockError('Connect: ');
Sock2Text(Sock, sin, sout);
Reset(sin);
Rewrite(sout);
while not eof(sin) do
begin
Readln(sin, Line);
Writeln(Line);
end;
Close(sin);
Close(sout);
Shutdown(Sock, 2);
end.
Wenn Sie Delphi verwenden, ich Indy Steckdosen, eine Reihe von Klassen für die einfache Manipulation von Steckdosen und viele anderen Internet-Protokollen (HTTP, FTP, NTP sehr empfehlen , POP3 etc.)
Und dann speziell die -10.x Version. –
Sie können OpenSSL nicht mit Indy Version 10.5 verwenden, das mit Delphi 2007 ausgeliefert wird. Sie müssen Version 10,6 von http://www.indyproject.org/ herunterladen und es int installieren o die IDE.
Beachten Sie, dass andere Pakete Indy wie RemObjects verwenden können und daher auch neu kompiliert werden müssen und dies kann aufgrund von Querverweisen schwierig sein.
Wenn Sie FPC oder Lazarus verwenden (was im Grunde eine IDE für FPC und ein Klon von Delphi ist), könnten Sie die Socket-Bibliothek Synapse verwenden. Es ist wunderbar.
Können Sie korrigieren Sie bitte hier: http://www.bastisoft.de/programmierung/pascal/pasinet.html? –